[PATCH][PPC32] Fix e500 SPE saving of context

From: Kumar Gala
Date: Mon Aug 02 2004 - 14:24:05 EST


All,

Fix the fact that we were not the signal processing engine status
and control register (SPEFSCR) on giveup_spe. Causes problems when
the kernel tries to read or modify the SPEFSCR.

Signed-off-by: Kumar Gala <kumar.gala@xxxxxxxxxxxxx>

diff -Nru a/arch/ppc/kernel/head_e500.S b/arch/ppc/kernel/head_e500.S
--- a/arch/ppc/kernel/head_e500.S 2004-08-02 13:24:48 -05:00
+++ b/arch/ppc/kernel/head_e500.S 2004-08-02 13:24:48 -05:00
@@ -1177,6 +1177,8 @@
evmwumiaa evr6, evr6, evr6 /* evr6 <- ACC = 0 * 0 + ACC */
li r4,THREAD_ACC
evstddx evr6, r4, r3 /* save off accumulator */
+ mfspr r6,SPRN_SPEFSCR
+ stw r6,THREAD_SPEFSCR(r3) /* save spefscr register value */
beq 1f
lwz r4,_MSR-STACK_FRAME_OVERHEAD(r5)
lis r3,MSR_SPE@h

-
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/