4af6cd5f38
* Tracing of allocations, reallocations and frees * Leak checking infrastructure to dump allocations The leak checking code records the team and thread id when an allocation is made as well as stores the originally requested size. It also adds the "allocations" debugger command that can dump all current allocations (usually a huge list) or filter by either a team or thread id. This way it's easily possible to find leftover allocations of no more active teams/threads. Combined with the tracing support one might be able to track down the time and reason of an allocation and possibly find the corresponding leak if it is one. Note that kernel heap leak checking has to be enabled manually by setting the KERNEL_HEAP_LEAK_CHECK define to 1. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23953 a95241bf-73f2-0310-859d-f6bbb57e9c96
28 lines
569 B
C
28 lines
569 B
C
#ifndef KERNEL_TRACING_CONFIG_H
|
|
#define KERNEL_TRACING_CONFIG_H
|
|
|
|
// general settings
|
|
|
|
// enable tracing (0/1)
|
|
#ifndef ENABLE_TRACING
|
|
# define ENABLE_TRACING 0
|
|
#endif
|
|
|
|
// tracing buffer size (in bytes)
|
|
#ifndef MAX_TRACE_SIZE
|
|
# define MAX_TRACE_SIZE (1024 * 1024)
|
|
#endif
|
|
|
|
|
|
// macros that enable tracing for individual components
|
|
|
|
//#define BMESSAGE_TRACING
|
|
//#define BLOCK_CACHE_TRANSACTION_TRACING
|
|
//#define KERNEL_HEAP_TRACING
|
|
//#define RUNTIME_LOADER_TRACING
|
|
//#define SIGNAL_TRACING
|
|
//#define SYSCALL_TRACING
|
|
//#define TEAM_TRACING
|
|
|
|
#endif // KERNEL_TRACING_CONFIG_H
|