linux-mips
[Top] [All Lists]

Re: kexec on mips - anyone has it working?

To: Nicolas Schichan <nschichan@freebox.fr>
Subject: Re: kexec on mips - anyone has it working?
From: Tomasz Chmielewski <mangoo@wpkg.org>
Date: Tue, 01 Jul 2008 19:53:17 +0200
Cc: linux-mips@linux-mips.org, Kexec Mailing List <kexec@lists.infradead.org>, openwrt-devel@lists.openwrt.org
In-reply-to: <200807011542.29274.nschichan@freebox.fr>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <483BCB75.4050901@wpkg.org> <200805301327.11925.nschichan@freebox.fr> <483FE764.1090901@wpkg.org> <200807011542.29274.nschichan@freebox.fr>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Thunderbird 2.0.0.12 (X11/20080305)
Nicolas Schichan schrieb:
On Friday 30 May 2008 13:39:16 Tomasz Chmielewski wrote:

Hello,

Nicolas Schichan schrieb:
On Thursday 29 May 2008 22:15:47 Tomasz Chmielewski wrote:
Will call new kernel at 00305000
The calling address of the kernel looks quite wrong, it should clearly
be inside the KSEG0 zone. could  you please indicate the output of the
command "mips-linux-readelf -l vmlinux" ?
# uname -m
mips
# readelf -l vmlinux

Elf file type is EXEC (Executable file)
Entry point 0x80251b50

This is  quite surprising.   The jump address  that kexec will  use is
cleary not what  I expected. I would have expected it  to be the Entry
point address given by readelf.

could  you try  the  following patch  to  make sure  that the  kimage*
structure is not corrupted by the code in machine_kexec() ?

Index: linux/arch/mips/kernel/machine_kexec.c
===================================================================
--- linux/arch/mips/kernel/machine_kexec.c      (revision 8056)
+++ linux/arch/mips/kernel/machine_kexec.c      (working copy)
@@ -49,6 +49,8 @@
        unsigned long entry;
        unsigned long *ptr;
+ printk("image->start = %p", image->start);
+
        reboot_code_buffer =
          (unsigned long)page_address(image->control_code_page);

Umm?

  CC      arch/mips/kernel/machine_kexec.o
cc1: warnings being treated as errors
arch/mips/kernel/machine_kexec.c: In function 'machine_kexec':
arch/mips/kernel/machine_kexec.c:52: warning: format '%p' expects type 'void *', but argument 2 has type 'long unsigned int'
make[6]: *** [arch/mips/kernel/machine_kexec.o] Error 1
make[5]: *** [arch/mips/kernel] Error 2
make[5]: Leaving directory `/home/tch-data/openwrt/11612/build_dir/linux-brcm47xx/linux-2.6.25.9'



--
Tomasz Chmielewski
http://wpkg.org

<Prev in Thread] Current Thread [Next in Thread>