[PATCH][PPC64] Don't clear MSR.RI in do_hash_page_DSI

From: Paul Mackerras
Date: Fri Jun 04 2004 - 00:43:29 EST


Some code that is used on iSeries (do_hash_page_DSI in head.S) was
clearing the RI (recoverable interrupt) bit in the MSR when it
shouldn't. We were getting SLB miss interrupts following that which
were panicking because they appeared to have occurred at a bad place.
This patch fixes the problem. In fact it isn't necessary for
do_hash_page_DSI to do anything to RI, so the patch changes the code
to not set or clear it.

Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>

Please apply.

Thanks,
Paul.
diff -urN linux-2.5/arch/ppc64/kernel/head.S test25/arch/ppc64/kernel/head.S
--- linux-2.5/arch/ppc64/kernel/head.S 2004-06-04 07:19:00.000000000 +1000
+++ test25/arch/ppc64/kernel/head.S 2004-06-04 15:31:30.744946352 +1000
@@ -926,8 +926,8 @@
stb r0,PACAPROCENABLED(r20) /* Soft Disabled */

mfmsr r0
- ori r0,r0,MSR_EE+MSR_RI
- mtmsrd r0 /* Hard Enable, RI on */
+ ori r0,r0,MSR_EE
+ mtmsrd r0,1 /* Hard Enable */
#endif

/*
@@ -946,9 +946,9 @@
*/
mfmsr r0
li r4,0
- ori r4,r4,MSR_EE+MSR_RI
+ ori r4,r4,MSR_EE
andc r0,r0,r4
- mtmsrd r0 /* Hard Disable, RI off */
+ mtmsrd r0,1 /* Hard Disable */

ld r0,SOFTE(r1)
cmpdi 0,r0,0 /* See if we will soft enable in */

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/