sh: add dynamic crash base address support
PATCH 1/1 sh: add dynamic crash base address support
From: Magnus Damm <[email protected]>
Add support for dynamic crash kernel base address.
Signed-off-by Magnus Damm <[email protected]>
---
arch/sh/kernel/setup.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-)
arch/sh/kernel/setup.c +9 -6
@@ -147,6 +147,7 @@ static void __init reserve_crashkernel(v {unsigned long long free_mem;unsigned long long crash_size, crash_base; +void *vp;int ret; free_mem = ((unsigned long long )max_low_pfn - min_low_pfn) <<PAGE_SHIFT ;
@@ -155,12 +156,14 @@ static void __init reserve_crashkernel(v &crash_size, &crash_base);if (ret =0 && crash_size) {if (crash_base <=0 ) { -printk (KERN_INFO "crashkernel reservation failed - " -"you have to specify a base address\n" ); -return ; - } - -if (reserve_bootmem (crash_base, crash_size, + vp =alloc_bootmem_nopanic (crash_size); +if (!vp) { +printk (KERN_INFO "crashkernel allocation " +"failed\n" ); +return ; + } + crash_base =__pa (vp); + }else if (reserve_bootmem (crash_base, crash_size,BOOTMEM_EXCLUSIVE ) <0 ) {printk (KERN_INFO "crashkernel reservation failed - " "memory is in use\n" );