On Fri, Aug 17, 2012 at 01:32:45PM -0600, Bjorn Helgaas wrote:
> On Fri, Aug 17, 2012 at 12:29 PM, Thierry Reding
> <thierry.reding@avionic-design.de> wrote:
> > On Fri, Aug 17, 2012 at 11:44:31AM -0600, Bjorn Helgaas wrote:
> >> On Fri, Aug 17, 2012 at 11:36 AM, David Daney <ddaney.cavm@gmail.com>
> >> wrote:
> >> > For MIPS, Thierry Reding's patch in linux-next (PCI: Keep
> >> > pci_fixup_irqs()
> >> > around after init) causes:
> >> >
> >> > WARNING: vmlinux.o(.text+0x22c784): Section mismatch in reference from
> >> > the
> >> > function pci_fixup_irqs() to the function .init.text:pcibios_update_irq()
> >> >
> >> > The MIPS implementation of pcibios_update_irq() is __init, so there is
> >> > conflict with the removal of __init from pci_fixup_irqs() and
> >> > pdev_fixup_irq().
> >> >
> >> > Can you guys either remove the patch from linux-next, or improve it to
> >> > also
> >> > fix up any architecture implementations of pdev_update_irq()?
> >>
> >> Crap, there are lots of arches with this issue. I'll fix it up.
> >> Thanks for pointing it out!
> >
> > Oh wow... looks like I've opened a can of worms there. This requires
> > quite a lot of other functions to have their annotations removed as
> > well. Bjorn, how do you want to handle this?
>
> David said "pdev_update_irq()," but I think he meant "pcibios_update_irq()."
>
> Almost all the pcibios_update_irq() implementations are identical, so
> I think I'll just supply a weak implementation and remove the
> redundant arch versions.
That makes sense. However I've just tested a build with section mismatch
debugging enabled on ARM and there are a few more that need __init or
__devinit removed to get rid of the warnings:
pci_common_init()
pcibios_init_hw()
pcibios_init_resources()
pcibios_swizzle()
pcibios_update_irq()
pci_scan_root_bus() also needs __devinit removed. I haven't checked the
other architectures because I'll have to build cross-compilers for them
first, but I suspect most of them will have a similar list. I'm not sure
how well this kind of change is going to go down with the respective
architecture maintainers, though.
> This is just about the only thing in my "next" branch, so I'll clear
> it out for now, until we get this resolved.
Agreed. Do you want me to take a look at this or would you rather tackle
it yourself?
Thierry
pgpga6BLFmXLL.pgp
Description: PGP signature
|