diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-11 17:15:57 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-11 17:15:57 -0400 |
| commit | 512626a04e72aca60effe111fa0333ed0b195d21 (patch) | |
| tree | c22e23b0dcc2dd2ff5a9a96a007de6799e9223de /lib | |
| parent | 8a1ca8cedd108c8e76a6ab34079d0bbb4f244799 (diff) | |
| parent | 3aa27bbe7a6536d1ec859d3a97caf3319b5081b7 (diff) | |
Merge branch 'for-linus' of git://linux-arm.org/linux-2.6
* 'for-linus' of git://linux-arm.org/linux-2.6:
kmemleak: Add the corresponding MAINTAINERS entry
kmemleak: Simple testing module for kmemleak
kmemleak: Enable the building of the memory leak detector
kmemleak: Remove some of the kmemleak false positives
kmemleak: Add modules support
kmemleak: Add kmemleak_alloc callback from alloc_large_system_hash
kmemleak: Add the vmalloc memory allocation/freeing hooks
kmemleak: Add the slub memory allocation/freeing hooks
kmemleak: Add the slob memory allocation/freeing hooks
kmemleak: Add the slab memory allocation/freeing hooks
kmemleak: Add documentation on the memory leak detector
kmemleak: Add the base support
Manual conflict resolution (with the slab/earlyboot changes) in:
drivers/char/vt.c
init/main.c
mm/slab.c
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/Kconfig.debug | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 6cdcf38f2da9..116a35051be6 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug | |||
| @@ -336,6 +336,38 @@ config SLUB_STATS | |||
| 336 | out which slabs are relevant to a particular load. | 336 | out which slabs are relevant to a particular load. |
| 337 | Try running: slabinfo -DA | 337 | Try running: slabinfo -DA |
| 338 | 338 | ||
| 339 | config DEBUG_KMEMLEAK | ||
| 340 | bool "Kernel memory leak detector" | ||
| 341 | depends on DEBUG_KERNEL && EXPERIMENTAL && (X86 || ARM) && \ | ||
| 342 | !MEMORY_HOTPLUG | ||
| 343 | select DEBUG_SLAB if SLAB | ||
| 344 | select SLUB_DEBUG if SLUB | ||
| 345 | select DEBUG_FS if SYSFS | ||
| 346 | select STACKTRACE if STACKTRACE_SUPPORT | ||
| 347 | select KALLSYMS | ||
| 348 | help | ||
| 349 | Say Y here if you want to enable the memory leak | ||
| 350 | detector. The memory allocation/freeing is traced in a way | ||
| 351 | similar to the Boehm's conservative garbage collector, the | ||
| 352 | difference being that the orphan objects are not freed but | ||
| 353 | only shown in /sys/kernel/debug/kmemleak. Enabling this | ||
| 354 | feature will introduce an overhead to memory | ||
| 355 | allocations. See Documentation/kmemleak.txt for more | ||
| 356 | details. | ||
| 357 | |||
| 358 | In order to access the kmemleak file, debugfs needs to be | ||
| 359 | mounted (usually at /sys/kernel/debug). | ||
| 360 | |||
| 361 | config DEBUG_KMEMLEAK_TEST | ||
| 362 | tristate "Simple test for the kernel memory leak detector" | ||
| 363 | depends on DEBUG_KMEMLEAK | ||
| 364 | help | ||
| 365 | Say Y or M here to build a test for the kernel memory leak | ||
| 366 | detector. This option enables a module that explicitly leaks | ||
| 367 | memory. | ||
| 368 | |||
| 369 | If unsure, say N. | ||
| 370 | |||
| 339 | config DEBUG_PREEMPT | 371 | config DEBUG_PREEMPT |
| 340 | bool "Debug preemptible kernel" | 372 | bool "Debug preemptible kernel" |
| 341 | depends on DEBUG_KERNEL && PREEMPT && (TRACE_IRQFLAGS_SUPPORT || PPC64) | 373 | depends on DEBUG_KERNEL && PREEMPT && (TRACE_IRQFLAGS_SUPPORT || PPC64) |
