浏览代码

powerpc: Fix power4/970 idle code regression with lockdep

in commit 7230c5644188cd9e3fb380cc97dde00c464a3ba7
"powerpc: Rework lazy-interrupt handling"

I introduced a regression, accidentally calling irq tracing twice
and not properly restoring a clobbered register (r7) later used
for writing to the MSR.

This caused lockups when booting on a G5 with lockdep enabled.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Benjamin Herrenschmidt 13 年之前
父节点
当前提交
01e8ec4417
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      arch/powerpc/kernel/idle_power4.S

+ 1 - 1
arch/powerpc/kernel/idle_power4.S

@@ -50,9 +50,9 @@ END_FTR_SECTION_IFCLR(CPU_FTR_CAN_NAP)
 	addi    r1,r1,128
 	ld	r0,16(r1)
 	mtlr	r0
+	mfmsr	r7
 #endif /* CONFIG_TRACE_IRQFLAGS */
 
-	TRACE_ENABLE_INTS
 	li	r0,1
 	stb	r0,PACASOFTIRQEN(r13)	/* we'll hard-enable shortly */
 BEGIN_FTR_SECTION