We should never force MSR_RI on. If we take a machine check with MSR_RI off
then we have no chance of recovering safely.

Signed-off-by: Anton Blanchard <[email protected]>
---

Index: powerpc.git/arch/powerpc/kernel/traps.c
===================================================================
--- powerpc.git.orig/arch/powerpc/kernel/traps.c        2011-01-11 
13:46:39.541038778 +1100
+++ powerpc.git/arch/powerpc/kernel/traps.c     2011-01-11 13:46:42.601133580 
+1100
@@ -627,7 +627,6 @@ void machine_check_exception(struct pt_r
                return;
 
        if (user_mode(regs)) {
-               regs->msr |= MSR_RI;
                _exception(SIGBUS, regs, BUS_ADRERR, regs->nip);
                return;
        }
@@ -643,10 +642,8 @@ void machine_check_exception(struct pt_r
        return;
 #endif
 
-       if (debugger_fault_handler(regs)) {
-               regs->msr |= MSR_RI;
+       if (debugger_fault_handler(regs))
                return;
-       }
 
        if (check_io_access(regs))
                return;
_______________________________________________
Linuxppc-dev mailing list
[email protected]
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to