diff options
Diffstat (limited to 'arch/x86/mm/init.c')
| -rw-r--r-- | arch/x86/mm/init.c | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/mm/init.c b/arch/x86/mm/init.c index f905a2371080..8dacdb96899e 100644 --- a/arch/x86/mm/init.c +++ b/arch/x86/mm/init.c @@ -5,6 +5,7 @@  #include <linux/memblock.h>  #include <linux/swapfile.h>  #include <linux/swapops.h> +#include <linux/kmemleak.h>  #include <asm/set_memory.h>  #include <asm/e820/api.h> @@ -766,6 +767,11 @@ void free_init_pages(const char *what, unsigned long begin, unsigned long end)  	if (debug_pagealloc_enabled()) {  		pr_info("debug: unmapping init [mem %#010lx-%#010lx]\n",  			begin, end - 1); +		/* +		 * Inform kmemleak about the hole in the memory since the +		 * corresponding pages will be unmapped. +		 */ +		kmemleak_free_part((void *)begin, end - begin);  		set_memory_np(begin, (end - begin) >> PAGE_SHIFT);  	} else {  		/*  |