aboutsummaryrefslogtreecommitdiff
path: root/mm/Kconfig.debug
blob: 37d4513b4c63175308e1f222f4fa874cb19cafdc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
config DEBUG_PAGEALLOC
	bool "Debug page memory allocations"
	depends on DEBUG_KERNEL
	depends on !HIBERNATION || ARCH_SUPPORTS_DEBUG_PAGEALLOC && !PPC && !SPARC
	depends on !KMEMCHECK
	select PAGE_POISONING if !ARCH_SUPPORTS_DEBUG_PAGEALLOC
	select PAGE_GUARD if ARCH_SUPPORTS_DEBUG_PAGEALLOC
	---help---
	  Unmap pages from the kernel linear mapping after free_pages().
	  This results in a large slowdown, but helps to find certain types
	  of memory corruption.

	  For architectures which don't enable ARCH_SUPPORTS_DEBUG_PAGEALLOC,
	  fill the pages with poison patterns after free_pages() and verify
	  the patterns before alloc_pages().  Additionally,
	  this option cannot be enabled in combination with hibernation as
	  that would result in incorrect warnings of memory corruption after
	  a resume because free pages are not saved to the suspend image.

config SLUB_DEBUG_PANIC_ON
	bool "Enable to Panic on SLUB corruption detection"
	depends on SLUB_DEBUG
	help
	  SLUB has a resiliency feature enabled which restores bytes in
	  order for production environments to continue to operate. IN
	  debug options this may not be desirable as it prevents from
	  investigating the root cause which may be rooted within cache
	  or memory.

config WANT_PAGE_DEBUG_FLAGS
	bool

config PAGE_POISONING
	bool
	select WANT_PAGE_DEBUG_FLAGS

config PAGE_GUARD
	bool
	select WANT_PAGE_DEBUG_FLAGS