소스 검색

x86: BUILD_IRQ say .text to avoid .data.percpu

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>
Hugh Dickins 17 년 전
부모
커밋
9d25d4db81
1개의 변경된 파일1개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      arch/x86/kernel/irqinit_64.c

+ 1 - 1
arch/x86/kernel/irqinit_64.c

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