Critical Interrupt Input
Kumar Gala
galak at kernel.crashing.org
Fri Aug 16 21:04:54 EST 2013
On Aug 15, 2013, at 11:57 PM, Henry Bausley wrote:
>
> Is there any reason that a Critical Input Interrupt will not work reliably on a 44x powerpc?
>
> I am using an AMCC now Applied Micro AMCC460EX
>
> and changed
>
> CRITICAL_EXCEPTION(0x0100, CriticalInput, unknown_exception)
> to
> CRITICAL_EXCEPTION(0x0100, CriticalInput, do_MyCritIntr)
>
> The code for the handler is trivial
> ie.
> int crintrcount;
>
> void do_MyCritIntr(void)
> {
> crintrcount++;
> }
>
> The code runs for a while but eventually I get panic messages and the system hangs. Is there something I must alter in the kernel to do this reliably?
The 44x low level code needs to handle exception stacks properly for this to work. Since its possible to have a critical exception occur while in a normal exception level, you have to have proper saving of additional register state and a stack frame for the critical exception, etc. I'm not sure if that was ever done for 44x.
- k
More information about the Linuxppc-dev
mailing list