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,