x86: BUILD_IRQ say .text to avoid .data.percpu
authorHugh Dickins <hugh@veritas.com>
Mon, 21 Jul 2008 17:41:26 +0000 (18:41 +0100)
committerIngo Molnar <mingo@elte.hu>
Thu, 24 Jul 2008 10:42:57 +0000 (12:42 +0200)
When I edit the x86_64 Makefile to -fno-unit-at-a-time, bootup panics
on 0xCCs in IRQ0x3e_interrupt(): IRQ0x20_interrupt etc. have got linked
into .data.percpu.  Perhaps there are other ways of triggering that:
specify ".text" in the BUILD_IRQ() macro for safety.

I've been using -fno-unit-at-a-time (to lessen inlining, for easier
debugging) for a long time.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: Mike Travis <travis@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/irqinit_64.c

index 0373e88..9414125 100644 (file)
@@ -43,7 +43,7 @@
 
 #define BUILD_IRQ(nr)                          \
        asmlinkage void IRQ_NAME(nr);           \
-       asm("\n.p2align\n"                      \
+       asm("\n.text\n.p2align\n"               \
            "IRQ" #nr "_interrupt:\n\t"         \
            "push $~(" #nr ") ; "               \
            "jmp common_interrupt");