[PATCH] Fix kexec x86_64 load failed bug

Huang Ying ying.huang at intel.com
Tue Nov 25 20:20:09 EST 2008


Fix a bug of kexec load on x86_64. Kexec fails to do load on x86_64, with
error message:

  Symbol: cmdline_end not found cannot set

Because kexec/arch/i386/kexec-bzImage.c accesses cmdline_end symbol in
i386 purgatory, but there is no cmdline_end in x86_64 purgatory, and
kexec-bzImage.c is used by x86_64 too.

cmdline_end is added into x86_64 purgatory to solve the bug, because kexec
jump support for x86_64 is planned.

Reported-by: Bernhard Walle <bwalle at suse.de>
Signed-off-by: Huang Ying <ying.huang at intel.com>

diff --git a/purgatory/arch/x86_64/purgatory-x86_64.c b/purgatory/arch/x86_64/purgatory-x86_64.c
index 374b554..67a37f9 100644
--- a/purgatory/arch/x86_64/purgatory-x86_64.c
+++ b/purgatory/arch/x86_64/purgatory-x86_64.c
@@ -5,6 +5,7 @@
 uint8_t reset_vga = 0;
 uint8_t legacy_pic = 0;
 uint8_t panic_kernel = 0;
+char *cmdline_end = 0;
 
 void setup_arch(void)
 {

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
Url : http://lists.infradead.org/pipermail/kexec/attachments/20081126/ab110b83/attachment.bin 


More information about the kexec mailing list