MSR_SPE - being turned off...
Kumar Gala
galak at kernel.crashing.org
Wed May 6 14:23:46 EST 2009
On May 5, 2009, at 7:42 PM, Morrison, Tom wrote:
> The test case we found is under 'extreme' duress
> (intense loading on an MPC8572)...with many applications....
> using A LOT of SPE instructions...
>
> ----
>
> If you look at the context switch code (in latest code entry_32.S),
> I believe the context switch performs a SAVE_NVGPR() - which in our
> interpretation (in ppc_asm.h) - only saves the lower 32 bits of
> the GPR (stw/lwz)...
>
> This is only a guess of where the problem lies - based upon the single
> SPE instruction that seemingly got misinterpreted, and shifts the data
> By '1 byte' (and this code gets executed successfully MANY more times
> at lower bandwidths - than failures seen at higher bandwidths)...
>
> ----
>
> I am not sure how to proceed...we know how to recreate with our
> application, but we would love to know how to change (safely)
> the pt_regs to "long long" for the GPRs and then safely move
> all 64bits of each GPR into these doubles...
>
> We could then re-test and see if this helps?
>
> Tom
If you use SPE in an application the full 64-bits are saved and
restored it just split into two locations (one for the lower 32-bits
and one for the upper 32-bits).
Look at load_up_spe and giveup_spe in arch/powerpc/kernel/
head_fsl_booke.S
On the 8572 are you running w/SMP? What kernel version are you using
if so? Do you see the same issue on the MPC8548?
- k
More information about the Linuxppc-dev
mailing list