suggestions on handling additional exception levels on ppc32

Kumar Gala galak at kernel.crashing.org
Tue Apr 29 04:06:25 EST 2008


On Apr 28, 2008, at 12:04 PM, Scott Wood wrote:
> On Mon, Apr 28, 2008 at 11:58:58AM -0500, Kumar Gala wrote:
>>
>> On Apr 28, 2008, at 10:59 AM, Scott Wood wrote:
>>> On Mon, Apr 28, 2008 at 10:40:56AM -0500, Kumar Gala wrote:
>>>> A few possibilities:
>>>> * introduce an additional function pointer as part of
>>>> EXC_XFER_TEMPLATE() to specifies the type of handler (normal, crit,
>>>> dbg, mcheck)
>>>> * use the traps field low order bits to determine normal, crit,  
>>>> dbg,
>>>> mcheck at run time.
>>>> * duplicate the code paths for each exception level
>>>>
>>>> suggestions?
>>>
>>> You could temporarily disable all asynchronous exceptions, and use  
>>> the
>>> registers of the highest-priority exception type.
>>
>> That doesn't work.  We have NMIs or will have them in the future.
>
> Truly non-maskable?  Ick.  You could have a separate code path just  
> for
> the exception type that NMIs use, I guess, if there's a clear
> highest-priority among the remaining interrupt types.  What sort of
> exceptions are they?

The NMIs are machine check only so a separate path for them isn't a  
terrible idea.

However, disabling all other interrupts seems worse than adding a  
function pointer.

- k




More information about the Linuxppc-dev mailing list