diff options
author | David Daney <david.daney@cavium.com> | 2017-10-12 14:02:26 -0700 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2017-10-16 09:01:17 +0200 |
commit | 552bfbfc00eeaef773e8746867b44cd162c9a0dd (patch) | |
tree | e741975e9d2832e9fd5ae22433d57865b890d428 | |
parent | 69431282f075ab723c4886f20aa248976920aaae (diff) |
kexec-tools: mips: Don't set lowmem_limit to 2G for 64-bit systems.
The 64-bit MIPS architecture doesn't have the same 2G limit the 32-bit
version has. Set MAXMEM and lowmem_limit to 0 for 64-bit MIPS so that
memory above 2G is usable in the kdump core files.
Signed-off-by: David Daney <david.daney@cavium.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
-rw-r--r-- | kexec/arch/mips/crashdump-mips.c | 4 | ||||
-rw-r--r-- | kexec/arch/mips/crashdump-mips.h | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/kexec/arch/mips/crashdump-mips.c b/kexec/arch/mips/crashdump-mips.c index 6308ec8..22fc38e 100644 --- a/kexec/arch/mips/crashdump-mips.c +++ b/kexec/arch/mips/crashdump-mips.c @@ -201,7 +201,7 @@ static int get_crash_memory_ranges(struct memory_range **range, int *ranges) memory_ranges++; /* Segregate linearly mapped region. */ - if ((MAXMEM - 1) >= start && (MAXMEM - 1) <= end) { + if (MAXMEM && (MAXMEM - 1) >= start && (MAXMEM - 1) <= end) { crash_memory_range[memory_ranges - 1].end = MAXMEM - 1; /* Add segregated region. */ @@ -304,7 +304,7 @@ static struct crash_elf_info elf_info64 = { data : ELFDATALOCAL, machine : EM_MIPS, page_offset : PAGE_OFFSET, - lowmem_limit : MAXMEM, + lowmem_limit : 0, /* 0 == no limit */ }; static struct crash_elf_info elf_info32 = { diff --git a/kexec/arch/mips/crashdump-mips.h b/kexec/arch/mips/crashdump-mips.h index c986835..7edd859 100644 --- a/kexec/arch/mips/crashdump-mips.h +++ b/kexec/arch/mips/crashdump-mips.h @@ -6,12 +6,13 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline, unsigned long max_addr, unsigned long min_base); #ifdef __mips64 #define PAGE_OFFSET 0xa800000000000000ULL +#define MAXMEM 0 #else #define PAGE_OFFSET 0x80000000 +#define MAXMEM 0x80000000 #endif #define __pa(x) ((unsigned long)(X) & 0x7fffffff) -#define MAXMEM 0x80000000 #define CRASH_MAX_MEMMAP_NR (KEXEC_MAX_SEGMENTS + 1) #define CRASH_MAX_MEMORY_RANGES (MAX_MEMORY_RANGES + 2) |