linux-mips
[Top] [All Lists]

Re: kexec on mips - anyone has it working?

To: kexec@lists.infradead.org
Subject: Re: kexec on mips - anyone has it working?
From: Nicolas Schichan <nschichan@freebox.fr>
Date: Tue, 1 Jul 2008 20:00:40 +0200
Cc: Tomasz Chmielewski <mangoo@wpkg.org>, linux-mips@linux-mips.org
In-reply-to: <486A6F0D.4070802@wpkg.org>
Organization: Freebox
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <483BCB75.4050901@wpkg.org> <200807011542.29274.nschichan@freebox.fr> <486A6F0D.4070802@wpkg.org>
Sender: linux-mips-bounce@linux-mips.org
User-agent: KMail/1.9.6 (enterprise 0.20070907.709405)
On Tuesday 01 July 2008 19:53:17 Tomasz Chmielewski wrote:
> > 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'

-Werror is missing from my kernel cflags.

Try this one, %lx will accept unsigned long parameters without warnings:

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 = %lx", image->start);
+
        reboot_code_buffer =
          (unsigned long)page_address(image->control_code_page);
 

Regards,


-- 
Nicolas Schichan


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