summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2016-04-01 13:47:36 (GMT)
committerRussell King <rmk+kernel@arm.linux.org.uk>2016-05-03 10:15:51 (GMT)
commitd0506a2395eb07bef248de95016d9a8cf8a465ea (patch)
tree5e144f520ff77b154cf9c3a47babc671a02861fe
parent981b6714dbd26609212536b9fed43e49db1459cf (diff)
downloadlinux-d0506a2395eb07bef248de95016d9a8cf8a465ea.tar.xz
ARM: kexec: remove 512MB restriction on kexec crashdump
The real limit is the top of the visible physical address space with the MMU turned off. Hence, we need to limit the crash kernel allocation running-view physical address of the top of the boot-view physical address space. Reviewed-by: Pratyush Anand <panand@redhat.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--arch/arm/kernel/setup.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
index 77b54c4..d9317ee 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -943,7 +943,6 @@ late_initcall(init_machine_late);
* zImage relocating below the reserved region.
*/
#define CRASH_ALIGN (128 << 20)
-#define CRASH_ADDR_MAX (PHYS_OFFSET + (512 << 20))
static inline unsigned long long get_total_mem(void)
{
@@ -973,9 +972,7 @@ static void __init reserve_crashkernel(void)
return;
if (crash_base <= 0) {
- unsigned long long crash_max = CRASH_ADDR_MAX;
- if (crash_max > (u32)~0)
- crash_max = (u32)~0;
+ unsigned long long crash_max = idmap_to_phys((u32)~0);
crash_base = memblock_find_in_range(CRASH_ALIGN, crash_max,
crash_size, CRASH_ALIGN);
if (!crash_base) {