MSR_SPE - being turned off...
Kumar Gala
galak at kernel.crashing.org
Thu May 7 07:23:04 EST 2009
Since you are mentioning alignment it looks my patch for SPE alignment
went in after 2.6.23:
commit 26caeb2ee1924d564e8d8190aa783a569532f81a
Author: Kumar Gala <galak at kernel.crashing.org>
Date: Fri Aug 24 16:42:53 2007 -0500
[POWERPC] Handle alignment faults on SPE load/store instructions
This adds code to handle alignment traps generated by the following
SPE (signal processing engine) load/store instructions, by
emulating
the instruction in the kernel (as is done for other instructions
that
generate alignment traps):
You may want to try and see if you can apply that patch to your kernel
tree and see what happens.
- k
On May 6, 2009, at 3:15 PM, Morrison, Tom wrote:
> Sorry, let me try again...
>
>>> -----Original Message-----
> After sitting with the developer of the application for a while,
>
> a) Alignment (aka: alignment exceptions) - Looking at how it
> handles the instruction - it interprets these SPE as common
> instructions & then resets the 'upper' 32bits.
>
> I was just made aware that on 9/14/2007 - Kumar submitted a
> patch that handles these instructions correctly (we don't
> have that version - I am in the process of trying to port it
> to my current version of the kernel (to see if part of
> problem).
>
> In general, this is a VERY disturbing thing. We 'turn on
> SPE' in the compiler (-mspe=yes)(a). We are NOT explicitly
> using SPE instructions in our application(b), BUT(c), the
> 4.2.171
> compiler (having origins from Code Sourcery (via Freescale))
> upon
> optimizations put SPE instructions in without any regard for
> alignment (which instead of making the code faster - might
> actually
> make the code slower)? It's a little disturbing to me.
>
> Stay tuned for more details about my port - and seeing if some
> of my problems go away..
>
> b) We still contend if you have multiple tasks using a (VERY) high
> Density of SPE instructions - and the system is taxed heavily
> (with lots of context switches) - there is the possibility that
> a task will get unlucky and the registers setup will NOT there
> after the context switches back (if some other task does something
> else with the entire 64bits).
>
>
>
> Tom
>
>>>
>>>>> -----Original Message-----
>>>>> From: Kumar Gala [mailto:galak at kernel.crashing.org]
>>>>> Sent: Wednesday, May 06, 2009 8:44 AM
>>>>> To: Morrison, Tom
>>>>> Cc: Michael Neuling; linuxppc-dev at ozlabs.org
>>>>> Subject: Re: MSR_SPE - being turned off...
>>>>>
>>>>> Can you describe the # of processes you are running in your test.
> Is
>>>>> it possible for you to try the tests w/2.6.29 from kernel.org?
>>>>>
>>>>> - k
>>>>>
>>>>> On May 6, 2009, at 7:42 AM, Morrison, Tom wrote:
>>>>>
>>>>>> I'm sorry I forgot to put that, this issue was found with our
>>>>>> currently running kernel 2.6.23.final (what comes with the
>>>>>> Freescale LTIB BSP package dated 05/23/2009).
>>>>>>
>>>>>> I am sorry if I don't understand your statement that the SMP
> might
>>>>>> be broken on this kernel, because I tried to analyze the kernel
> that
>>>>>> came with the latest BSP LTIB [ackage from Freescale (dated
>>> 12/18/2009
>>>>>> (where we got the 4.2.171 compiler from)), and the associated
>>> 'switch
>>>>>> context' code is exactly the same. Unfortunately, I have not
> started
>>>>>> the process of porting my current platform's BSP to this new
> kernel
>>> -
>>>>>> otherwise, I would have done the test on that platform (this
> also
>>>>>> requires a new version of u-boot in order to test correctly))..
>>>>>>
>>>>>> I may have mis-interpreted something and/or I am sure I don't
>>>>>> understand everything about the SMP resource management (and
>>>>>> associated SPE management), so thank you for any insight you
>>>>>> may have on this front...
>>>>>>
>>>>>> Tom
>>>>>>
>>>>>>>> -----Original Message-----
>>> <snip other emails>
More information about the Linuxppc-dev
mailing list