ARM IRQ reenter question

xu ray at
Tue Sep 2 04:49:25 UTC 2008

2008/9/2 Gene Smith <gds at>

> I have two IRQ exceptions: timer and ethernet. They are both handled by
> _ISR_Handler in irq_asm.S. When I look with jtag debugger, I see
> _ISR_Handler being called again while it is is progress (reentered) even
> though the IRQ disable bit in the CPSR is set (disabled == 1) according
> to gdb. Sometimes _ISR_Handler calls ethernet and sometimes timer, but I
> never see it actually return.
> Would this be expected with the CSPR set to 0x00000092 ?  I would think
> with IRQ disabled, _ISR_Handler would never be reentered.

It is true that when IRQ disabled, it should not re-enter ISR_Handler.

> The program runs fine as long as I don't hit a breakpoint. After I hit a
> breakpoint and try to step or eventually continue, the program always
> crashes. So, with this problem, my debugger is useless.

It seems that the debugger change the mechanism of ISR for ARM.

> Thanks,
> -gene
> _______________________________________________
> rtems-users mailing list
> rtems-users at

Thanks & Best Regards!

Ray, Xu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the users mailing list