[PATCH][2.6.8-rc1-mm1] arch/i386/kernel/smp.c gcc341 inlining fix

From: Mikael Pettersson
Date: Wed Jul 14 2004 - 07:18:00 EST


gcc-3.4.1 errors out in 2.6.8-rc1-mm1 at arch/i386/kernel/smp.c:

arch/i386/kernel/smp.c: In function `flush_tlb_others':
arch/i386/kernel/smp.c:161: sorry, unimplemented: inlining failed in call to 'send_IPI_mask_bitmask': function not considered for inlining
arch/i386/kernel/smp.c:9: sorry, unimplemented: called from here
make[1]: *** [arch/i386/kernel/smp.o] Error 1
make: *** [arch/i386/kernel] Error 2

The <mach_ipi.h> inlines depend on functions defined further
down in smp.c. Moving the #include eliminates the problem.

Signed-off-by: Mikael Pettersson <mikpe@xxxxxxxxx>

--- linux-2.6.8-rc1-mm1/arch/i386/kernel/smp.c.~1~ 2004-07-14 12:59:20.000000000 +0200
+++ linux-2.6.8-rc1-mm1/arch/i386/kernel/smp.c 2004-07-14 13:31:01.000000000 +0200
@@ -22,7 +22,6 @@

#include <asm/mtrr.h>
#include <asm/tlbflush.h>
-#include <mach_ipi.h>
#include <mach_apic.h>

/*
@@ -230,6 +229,8 @@
local_irq_restore(flags);
}

+#include <mach_ipi.h> /* must come after the send_IPI functions above for inlining */
+
/*
* Smarter SMP flushing macros.
* c/o Linus Torvalds.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/