diff options
author | Vivek Goyal <vgoyal@in.ibm.com> | 2006-09-18 15:07:33 -0400 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2006-10-06 12:44:15 +0900 |
commit | 49e72cf7736ac4c219a8f106bff332f2691fabd2 (patch) | |
tree | b0d59c36229ccbacc105eeebc1d9c37dc4b54fb9 | |
parent | af07e52128dff6d25d6efd94c9e22c21e7b30cec (diff) |
x86_64: Load vmcore elf headers away from kernel
o Sometimes while second kernel is booting, it stomps over the segments
stored by kexec/kdump. Of course this is an error condition and should
be fixed if such instances are met. Such error conditions are hard to
detect sometimes.
o This patch loads the vmcore elf headers towards the end of the reserved
hole instead of loading it towards the beginning of the hole. This
effectively keep kernel and elf header segment as far as possible and
chances of it getting stomped are less.
Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
-rw-r--r-- | kexec/arch/x86_64/crashdump-x86_64.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kexec/arch/x86_64/crashdump-x86_64.c b/kexec/arch/x86_64/crashdump-x86_64.c index e9af1f5..d49fd88 100644 --- a/kexec/arch/x86_64/crashdump-x86_64.c +++ b/kexec/arch/x86_64/crashdump-x86_64.c @@ -636,7 +636,7 @@ int load_crashdump_segments(struct kexec_info *info, char* mod_cmdline, * This is a makeshift solution until it is fixed in kernel. */ elfcorehdr = add_buffer(info, tmp, sz, 16*1024, align, min_base, - max_addr, 1); + max_addr, -1); if (delete_memmap(memmap_p, elfcorehdr, sz) < 0) return -1; cmdline_add_memmap(mod_cmdline, memmap_p); |