diff options
author | Hannes Reinecke <hare@suse.de> | 2009-08-12 09:41:23 +0200 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2009-08-13 18:22:45 +1000 |
commit | c38ad602e15e5c7c4204d1a47e2fd1984cf98afb (patch) | |
tree | e6e388ed154d8f09c0177a28e8dadf6d7514375e | |
parent | 66bbafc328ddd6aea12418286b1ab9d68232f47c (diff) |
Increase kernel text size for x86_64
Hi all,
I cannot load a x86_64 kernel with kexec on 2.6.31; the error message is:
Can't find kernel text map area from kcore
Cannot load /boot/vmlinuz
Digging through the source I found a mismatch between the assumed
kernel text size; kexec has:
#define KERNEL_TEXT_SIZE (40UL*1024*1024)
but on the kernel side we have:
include/asm/page_64_types.h:
#define KERNEL_IMAGE_SIZE (512 * 1024 * 1024)
And, indeed, changing the definition in kexec-tools to the kernel one
fixed the problem.
Not sure if this has been reported before, if so please ignore
the noise.
Cheers,
Hannes
--
Dr. Hannes Reinecke zSeries & Storage
hare@suse.de +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)
Signed-off-by: Simon Horman <horms@verge.net.au>
-rw-r--r-- | kexec/arch/x86_64/crashdump-x86_64.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kexec/arch/x86_64/crashdump-x86_64.h b/kexec/arch/x86_64/crashdump-x86_64.h index 9f4dee9..0e83527 100644 --- a/kexec/arch/x86_64/crashdump-x86_64.h +++ b/kexec/arch/x86_64/crashdump-x86_64.h @@ -11,7 +11,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline, #define MAXMEM 0x3fffffffffffUL /* Kernel text size */ -#define KERNEL_TEXT_SIZE (40UL*1024*1024) +#define KERNEL_TEXT_SIZE (512UL*1024*1024) #define CRASH_MAX_MEMMAP_NR (KEXEC_MAX_SEGMENTS + 1) #define CRASH_MAX_MEMORY_RANGES (MAX_MEMORY_RANGES + 2) |