xref: /linux/mm/Kconfig.debug (revision 0d456bad36d42d16022be045c8a53ddbb59ee478)
1config DEBUG_PAGEALLOC
2	bool "Debug page memory allocations"
3	depends on DEBUG_KERNEL
4	depends on !HIBERNATION || ARCH_SUPPORTS_DEBUG_PAGEALLOC && !PPC && !SPARC
5	depends on !KMEMCHECK
6	select PAGE_POISONING if !ARCH_SUPPORTS_DEBUG_PAGEALLOC
7	select PAGE_GUARD if ARCH_SUPPORTS_DEBUG_PAGEALLOC
8	---help---
9	  Unmap pages from the kernel linear mapping after free_pages().
10	  This results in a large slowdown, but helps to find certain types
11	  of memory corruption.
12
13	  For architectures which don't enable ARCH_SUPPORTS_DEBUG_PAGEALLOC,
14	  fill the pages with poison patterns after free_pages() and verify
15	  the patterns before alloc_pages().  Additionally,
16	  this option cannot be enabled in combination with hibernation as
17	  that would result in incorrect warnings of memory corruption after
18	  a resume because free pages are not saved to the suspend image.
19
20config WANT_PAGE_DEBUG_FLAGS
21	bool
22
23config PAGE_POISONING
24	bool
25	select WANT_PAGE_DEBUG_FLAGS
26
27config PAGE_GUARD
28	bool
29	select WANT_PAGE_DEBUG_FLAGS
30