I don't really understand why gcc gives the error it does, but without this patch, when building with CONFIG_HOTPLUG=n, I get errors like: CC arch/x86_64/pci/../../i386/pci/fixup.o arch/x86_64/pci/../../i386/pci/fixup.c: In function `pci_fixup_i450nx': arch/x86_64/pci/../../i386/pci/fixup.c:13: error: pci_fixup_i450nx causes a section type conflict The change is obviously correct: an array should be declared __devinitdata rather that __devinit. Signed-off-by: Roland Dreier Acked-by: Martin J. Bligh --- a/arch/i386/pci/fixup.c +++ b/arch/i386/pci/fixup.c @@ -398,7 +398,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI */ static u16 toshiba_line_size; -static struct dmi_system_id __devinit toshiba_ohci1394_dmi_table[] = { +static struct dmi_system_id __devinitdata toshiba_ohci1394_dmi_table[] = { { .ident = "Toshiba PS5 based laptop", .matches = {