1 /* 2 * Copyright 2010-2012 Haiku, Inc. All Rights Reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef MALLOC_DEBUG_H 6 #define MALLOC_DEBUG_H 7 8 9 #include <OS.h> 10 11 #ifdef __cplusplus 12 extern "C" { 13 #endif 14 15 status_t heap_debug_start_wall_checking(int msInterval); 16 status_t heap_debug_stop_wall_checking(); 17 18 void heap_debug_set_memory_reuse(bool enabled); 19 void heap_debug_set_paranoid_validation(bool enabled); 20 void heap_debug_set_debugger_calls(bool enabled); 21 void heap_debug_validate_heaps(); 22 void heap_debug_validate_walls(); 23 24 void heap_debug_dump_allocations(bool statsOnly, thread_id thread); 25 void heap_debug_dump_heaps(bool dumpAreas, bool dumpBins); 26 27 void *heap_debug_malloc_with_guard_page(size_t size); 28 29 status_t heap_debug_get_allocation_info(void *address, size_t *size, 30 thread_id *thread); 31 32 #ifdef __cplusplus 33 } 34 #endif 35 36 #endif /* MALLOC_DEBUG_H */ 37