[Milkymist-devel] Linux Kernel

Sébastien Bourdeauducq sebastien.bourdeauducq at lekernel.net
Sun Mar 14 13:02:50 PDT 2010


On Sunday 14 March 2010 17:41:46 Michael Walle wrote:
> Shouldn't the linux kernel mask the interrupt it is currently processing
>  (in case of level sensitive interrupts)?

I don't think so. When the CPU enters exception mode, the global interrupt 
enable bit (IE.IE) is cleared and saved to IE.EIE. So, the interrupt handler 
will not be run in a loop even if the interrupt line is kept active. Then, 
once the exception has been serviced, the interrupt handler executes the 
"eret" instruction which restores IE.IE from IE.EIE, globally enabling 
interrupts again. Only at this point is the interrupt handler run again if the 
interrupt line is still active (or the interrupt hasn't been acked).

Sébastien


More information about the Devel mailing list