Subject: Re: Don't pass the stack pointer to zImage's start() function

From: David Gibson <[email-masked]>
Date: Thu, 15 Mar 2007 16:18:21 +1100

On Thu, Mar 15, 2007 at 03:35:46PM +1100, Tony Breeds wrote:
> On Thu, Mar 15, 2007 at 03:29:04PM +1100, David Gibson wrote:
> > At present, the zImage entry code passes a copy of the stack pointer
> > to the start() function.  There's no real reason for this; the only
> > thing start() does with it is print it out.  It appears to be a
> > leftover debugging hack, so, this patch removes it.
> 
> <snip>
> 
> > --- working-2.6.orig/arch/powerpc/boot/main.c	2007-03-15 14:03:09.000000000 +1100
> > +++ working-2.6/arch/powerpc/boot/main.c	2007-03-15 14:07:05.000000000 +1100
> > @@ -256,7 +256,7 @@ struct dt_ops dt_ops;
> >  struct console_ops console_ops;
> >  struct loader_info loader_info;
> >  
> > -void start(void *sp)
> > +void start(void)
> >  {
> >  	struct addr_range vmlinux, initrd;
> >  	kernel_entry_t kentry;
> > @@ -268,8 +268,7 @@ void start(void *sp)
> >  	if (platform_ops.fixups)
> >  		platform_ops.fixups();
> >  
> > -	printf("\n\rzImage starting: loaded at 0x%p (sp: 0x%p)\n\r",
> > -	       _start, sp);
> > +	printf("\n\rzImage starting: loaded at 0x%p (sp: 0x%p)\n\r", _start);
> 
> Shouldn't that be:
> 
> +	printf("\n\rzImage starting: loaded at 0x%p\n\r", _start);
> 
> or similar?

Crap, yes, I suck.

Fixed version coming, plus a patch to turn on gcc printf format
warnings for the zImage.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson