powerpc: Clear MSR_RI during RTAS calls

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Linux Kernel Mailing List
Date: Saturday, February 27, 2010 - 5:59 pm

Gitweb:     http://git.kernel.org/linus/44c9f3cc1a07503b653b571eac5792436da39a30
Commit:     44c9f3cc1a07503b653b571eac5792436da39a30
Parent:     8354be9c104db8e92bb079e29540fbafb7f09b5c
Author:     Anton Blanchard <anton@samba.org>
AuthorDate: Sun Feb 7 19:37:29 2010 +0000
Committer:  Benjamin Herrenschmidt <benh@kernel.crashing.org>
CommitDate: Tue Feb 9 13:56:24 2010 +1100

    powerpc: Clear MSR_RI during RTAS calls
    
    RTAS should never cause an exception but if it does (for example accessing
    outside our RMO) then we might go a long way through the kernel before
    oopsing. If we unset MSR_RI we should at least stop things on exception
    exit.
    
    Signed-off-by: Anton Blanchard <anton@samba.org>
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
 arch/powerpc/kernel/entry_64.S |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/kernel/entry_64.S b/arch/powerpc/kernel/entry_64.S
index bdcb557..07109d8 100644
--- a/arch/powerpc/kernel/entry_64.S
+++ b/arch/powerpc/kernel/entry_64.S
@@ -791,9 +791,8 @@ _GLOBAL(enter_rtas)
 	
         li      r9,1
         rldicr  r9,r9,MSR_SF_LG,(63-MSR_SF_LG)
-	ori	r9,r9,MSR_IR|MSR_DR|MSR_FE0|MSR_FE1|MSR_FP
+	ori	r9,r9,MSR_IR|MSR_DR|MSR_FE0|MSR_FE1|MSR_FP|MSR_RI
 	andc	r6,r0,r9
-	ori	r6,r6,MSR_RI
 	sync				/* disable interrupts so SRR0/1 */
 	mtmsrd	r0			/* don't get trashed */
 
--
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
powerpc: Clear MSR_RI during RTAS calls, Linux Kernel Mailing ..., (Sat Feb 27, 5:59 pm)