[haiku-commits] r43047 - in haiku/trunk/src/system/kernel: . vm

  • From: mmlr@xxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Mon, 31 Oct 2011 23:00:17 +0100 (CET)

Author: mmlr
Date: 2011-10-31 23:00:16 +0100 (Mon, 31 Oct 2011)
New Revision: 43047
Changeset: https://dev.haiku-os.org/changeset/43047

Modified:
   haiku/trunk/src/system/kernel/heap.cpp
   haiku/trunk/src/system/kernel/vm/vm.cpp
Log:
bonefish+mmlr:
Move blocking the 0xcccccccc and 0xdeadbeef address ranges from heap to VM init
so that it also works when used in the slab allocator.


Modified: haiku/trunk/src/system/kernel/heap.cpp
===================================================================
--- haiku/trunk/src/system/kernel/heap.cpp      2011-10-31 21:58:00 UTC (rev 
43046)
+++ haiku/trunk/src/system/kernel/heap.cpp      2011-10-31 22:00:16 UTC (rev 
43047)
@@ -2137,15 +2137,6 @@
 status_t
 heap_init_post_sem()
 {
-#if PARANOID_KERNEL_MALLOC
-       vm_block_address_range("uninitialized heap memory",
-               (void *)ROUNDDOWN(0xcccccccc, B_PAGE_SIZE), B_PAGE_SIZE * 64);
-#endif
-#if PARANOID_KERNEL_FREE
-       vm_block_address_range("freed heap memory",
-               (void *)ROUNDDOWN(0xdeadbeef, B_PAGE_SIZE), B_PAGE_SIZE * 64);
-#endif
-
        sHeapGrowSem = create_sem(0, "heap_grow_sem");
        if (sHeapGrowSem < 0) {
                panic("heap_init_post_sem(): failed to create heap grow sem\n");

Modified: haiku/trunk/src/system/kernel/vm/vm.cpp
===================================================================
--- haiku/trunk/src/system/kernel/vm/vm.cpp     2011-10-31 21:58:00 UTC (rev 
43046)
+++ haiku/trunk/src/system/kernel/vm/vm.cpp     2011-10-31 22:00:16 UTC (rev 
43047)
@@ -3739,6 +3739,15 @@
        void* lastPage = (void*)ROUNDDOWN(~(addr_t)0, B_PAGE_SIZE);
        vm_block_address_range("overflow protection", lastPage, B_PAGE_SIZE);
 
+#if PARANOID_KERNEL_MALLOC
+       vm_block_address_range("uninitialized heap memory",
+               (void *)ROUNDDOWN(0xcccccccc, B_PAGE_SIZE), B_PAGE_SIZE * 64);
+#endif
+#if PARANOID_KERNEL_FREE
+       vm_block_address_range("freed heap memory",
+               (void *)ROUNDDOWN(0xdeadbeef, B_PAGE_SIZE), B_PAGE_SIZE * 64);
+#endif
+
        // create the object cache for the page mappings
        gPageMappingsObjectCache = create_object_cache_etc("page mappings",
                sizeof(vm_page_mapping), 0, 0, 64, 128, CACHE_LARGE_SLAB, NULL, 
NULL,


Other related posts:

  • » [haiku-commits] r43047 - in haiku/trunk/src/system/kernel: . vm - mmlr