From: Arnd Bergmann With the 2.6.7-rc3-mm1 acpi changes to arch/x86_64/kernel/mpparse.c, mp_find_ioapic is called from a non-__init function. The fatal code path is reached when loading device drivers for PCI devices. This trivial patch solved the problem for me, on i386 someone already did the same change. Signed-off-by: Arnd Bergmann Signed-off-by: Andrew Morton --- 25-akpm/arch/x86_64/kernel/mpparse.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -puN arch/x86_64/kernel/mpparse.c~mp_find_ioapic-must-not-be-__init arch/x86_64/kernel/mpparse.c --- 25/arch/x86_64/kernel/mpparse.c~mp_find_ioapic-must-not-be-__init Fri Jun 11 15:06:37 2004 +++ 25-akpm/arch/x86_64/kernel/mpparse.c Fri Jun 11 15:06:37 2004 @@ -716,7 +716,7 @@ struct mp_ioapic_routing { } mp_ioapic_routing[MAX_IO_APICS]; -static int __init mp_find_ioapic ( +static int mp_find_ioapic ( int gsi) { int i = 0; _