Currently we see the following link warning: WARNING: vmlinux.o(.pci_fixup_final+0xefc): Section mismatch in reference from the variable __pci_fixup_malta_pcnet32_ioports_fixup164 to the function .init.text:malta_pcnet32_ioports_fixup() The variable __pci_fixup_malta_pcnet32_ioports_fixup164 references a function __init malta_pcnet32_ioports_fixup(). This is often seen when error handling in the init function uses functionality in the exit path. The fix is often to remove the __init annotation of malta_pcnet32_ioports_fixup() so it may be used outside an exit section.
This is from the addition of "mti_malta32: fix the pci resource conflicts" (5c19c1c31c77 on v5.2/standard/mti-malta32) - which is a relatively old commit, but w/o a malta+PCnet32, I can't speak to whether this commit is still needed, or if the PCI resource overlap was solved another way. Hence here, we take the safe path and just remove the __init annotation. Signed-off-by: Paul Gortmaker <[email protected]> diff --git a/arch/mips/pci/fixup-malta.c b/arch/mips/pci/fixup-malta.c index ffc068e7f13e..df1cae42ff9e 100644 --- a/arch/mips/pci/fixup-malta.c +++ b/arch/mips/pci/fixup-malta.c @@ -143,7 +143,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82371AB, malta_piix_func1_fixup); /* Use the io resource allocated by YAMON */ -static void __init malta_pcnet32_ioports_fixup(struct pci_dev *pdev) +static void malta_pcnet32_ioports_fixup(struct pci_dev *pdev) { u32 check = 0, new = 0x1060; -- 2.7.4
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#8583): https://lists.yoctoproject.org/g/linux-yocto/message/8583 Mute This Topic: https://lists.yoctoproject.org/mt/72813853/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
