Subject: Re: section mismatch warnings in current git head for powerpc

From: Michael Ellerman <[email-masked]>
Date: Fri, 23 May 2008 11:02:39 +1000

On Thu, 2008-05-22 at 11:22 -0600, Chris Friesen wrote:
> I got the following warnings when building current git head for powerpc 
> 64bit:
> 
> 
>    LD      net/ipv4/built-in.o
>    LD      drivers/scsi/built-in.o
>    LD      net/built-in.o
>    LD      drivers/built-in.o
>    LD      vmlinux.o
>    MODPOST vmlinux.o
> WARNING: vmlinux.o(.text+0x73bc): Section mismatch in reference from the 
> function .start_secondary_prolog() to the function 
> .devinit.text:.start_secondary()
> The function .start_secondary_prolog() references
> the function __devinit .start_secondary().
> This is often because .start_secondary_prolog lacks a __devinit
> annotation or the annotation of .start_secondary is wrong.

start_secondary_prolog() is in asm, so I don't know what you're supposed
to do with that.

> WARNING: vmlinux.o(.text+0x260a8): Section mismatch in reference from 
> the function .pci_dn_reconfig_notifier() to the function 
> .devinit.text:.update_dn_pci_info()
> The function .pci_dn_reconfig_notifier() references
> the function __devinit .update_dn_pci_info().
> This is often because .pci_dn_reconfig_notifier lacks a __devinit
> annotation or the annotation of .update_dn_pci_info is wrong.

I think pci_dn_reconfig_notifier() could be __devinit, but it's not
clear because the code that calls it is not __devinit or conditional on
HOTPLUG, eventhough in practice I think it is only used for hotplug.

cheers

-- 
Michael Ellerman
OzLabs, IBM Australia Development Lab

wwweb: http://michael.ellerman.id.au
phone: +61 2 6212 1183 (tie line 70 21183)

We do not inherit the earth from our ancestors,
we borrow it from our children. - S.M.A.R.T Person