summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Neuling <mikey@neuling.org>2013-10-02 11:15:15 +0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2013-10-03 11:25:44 +0400
commitc69e63b0f135fa51d6e1c38b5ac8a1def15ea3fa (patch)
tree730696fab3d684a2ffa290b9fbef2baa3ec74e65
parenta53b27b3abeef406de92a2bb0ceb6fb4c3fb8fc4 (diff)
downloadlinux-c69e63b0f135fa51d6e1c38b5ac8a1def15ea3fa.tar.xz
powerpc/tm: Turn interrupts hard off in tm_reclaim()
We can't take IRQs in tm_reclaim as we might have a bogus r13 and r1. This turns IRQs hard off in this function. Signed-off-by: Michael Neuling <mikey@neuling.org> Cc: <stable@vger.kernel.org> # 3.9+ Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-rw-r--r--arch/powerpc/kernel/tm.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/tm.S b/arch/powerpc/kernel/tm.S
index 7b60b9851469..8ece1908be1a 100644
--- a/arch/powerpc/kernel/tm.S
+++ b/arch/powerpc/kernel/tm.S
@@ -123,6 +123,7 @@ _GLOBAL(tm_reclaim)
mr r15, r14
ori r15, r15, MSR_FP
li r16, MSR_RI
+ ori r16, r16, MSR_EE /* IRQs hard off */
andc r15, r15, r16
oris r15, r15, MSR_VEC@h
#ifdef CONFIG_VSX