aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/idle_power4.S
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2012-03-15 18:26:59 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2012-03-15 18:28:17 -0400
commit01e8ec4417d3c484986af0adaa0ae6632e0a59cd (patch)
tree46c760b18c2c5f089ac4043f95de4fd420c1b082 /arch/powerpc/kernel/idle_power4.S
parent7d3d897a4697e4ff746e5e82f116b2346ed28150 (diff)
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>
Diffstat (limited to 'arch/powerpc/kernel/idle_power4.S')
-rw-r--r--arch/powerpc/kernel/idle_power4.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/idle_power4.S b/arch/powerpc/kernel/idle_power4.S
index d8cdba4c28b2..2c71b0fc9f91 100644
--- a/arch/powerpc/kernel/idle_power4.S
+++ b/arch/powerpc/kernel/idle_power4.S
@@ -50,9 +50,9 @@ END_FTR_SECTION_IFCLR(CPU_FTR_CAN_NAP)
50 addi r1,r1,128 50 addi r1,r1,128
51 ld r0,16(r1) 51 ld r0,16(r1)
52 mtlr r0 52 mtlr r0
53 mfmsr r7
53#endif /* CONFIG_TRACE_IRQFLAGS */ 54#endif /* CONFIG_TRACE_IRQFLAGS */
54 55
55 TRACE_ENABLE_INTS
56 li r0,1 56 li r0,1
57 stb r0,PACASOFTIRQEN(r13) /* we'll hard-enable shortly */ 57 stb r0,PACASOFTIRQEN(r13) /* we'll hard-enable shortly */
58BEGIN_FTR_SECTION 58BEGIN_FTR_SECTION