Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 81a3de3e authored by Helge Deller's avatar Helge Deller Committed by Kyle McMartin
Browse files

[PARISC] Use DEBUG_KERNEL to catch used-after-free __init data



Use CONFIG_DEBUG_KERNEL to catch kernel code which tries to access
__init data after it is freed. When CONFIG_DEBUG_KERNEL is not set
this also cleans up a WARN_ON at boot time. Also remove some dead
code from mm/init.c

Signed-off-by: default avatarHelge Deller <deller@parisc-linux.org>
Signed-off-by: default avatarKyle McMartin <kyle@parisc-linux.org>
parent 1bcdd854
Loading
Loading
Loading
Loading
+1 −8
Original line number Diff line number Diff line
@@ -371,17 +371,11 @@ static void __init setup_bootmem(void)

void free_initmem(void)
{
	/* FIXME: */
#if 0
	printk(KERN_INFO "NOT FREEING INITMEM (%dk)\n",
			(&__init_end - &__init_begin) >> 10);
	return;
#else
	unsigned long addr;
	
	printk(KERN_INFO "Freeing unused kernel memory: ");

#if 1
#ifdef CONFIG_DEBUG_KERNEL
	/* Attempt to catch anyone trying to execute code here
	 * by filling the page with BRK insns.
	 * 
@@ -414,7 +408,6 @@ void free_initmem(void)
	pdc_chassis_send_status(PDC_CHASSIS_DIRECT_BCOMPLETE);
	
	printk("%luk freed\n", (unsigned long)(&__init_end - &__init_begin) >> 10);
#endif
}