Subject: Re: [v3 PATCH 1/1] booke/kprobe: make program exception to use one dedicated exception stack

From: "tiejun.chen" <[email-masked]>
Date: Tue, 19 Jul 2011 18:52:32 +0800

Scott Wood wrote:
> On Sat, 16 Jul 2011 03:25:47 +0000
> "Chen, Tiejun" <[email-masked]> wrote:
> 
>>> -----Original Message-----
>>> From: Scott Wood [mailto:[email-masked]] 
>>> Sent: Saturday, July 16, 2011 2:43 AM
>>> To: Chen, Tiejun
>>> Cc: Kumar Gala; [email-masked]
>>> Subject: Re: [v3 PATCH 1/1] booke/kprobe: make program 
>>> exception to use one dedicated exception stack
>>>
>>> On Fri, 15 Jul 2011 13:28:15 +0800
>>> tiejun.chen <[email-masked]> wrote:
>>>
>>>> Kumar Gala wrote:
>>>>> I'm still very confused why we need a unique stack frame 
>>> for kprobe/program exceptions on book-e devices.
>>>> Its a bug at least for Book-E.
>>> But why only booke?  There's nothing booke-specific about the 
>> I don't mean this is reproduced only on booke, so I use 'at least' carefully to notice we really see this problem on booke.
>>
>>> stwu instruction.
>> Please note this root cause to this bug is not related to how to emulate stwu instruction. That should be issued from the overlap between an exception frame and the kprobed function stack frame on booke. Would you like to see that example I showed?
> 
> As I understand it, the problem comes from the fact that stwu combines the
> creation of a stack frame with storing into that stack frame.  If they were

Yes.

> separate instructions you'd have a new exception frame at a lower address
> by the time you actually store to the non-exception frame.

So when kprobe we should use a unique stack frame to skip that stack frame the
kprobed stwu want to create.

Tiejun

> -Scott