regarding do_IRQ()
Hi I am reading robertlove implementing interrupt handlers. When interrupt comes, the processor immediately stops what it is doing, disables the interrupt system (I am assuming disables all local interrupts of that processor)and jumps to the initial entry point where it calls do_IRQ(). do_IRQ() acknowledges the receipt of the interrupt and disables the interrupt delivery on the line. Here is my question like ,If do_IRQ() disables the interrupt delivery on the line(I am assuming it disables the interrupt delivery to all other processors on that line),then what about the other devices which are sharing same interrupt line and trying to send interrupts to processors. thanks, santhu.
Hi... On Sun, Jul 24, 2011 at 11:48, santhosh kumars <karuna.linux@gmail.com> wrote: ......
Here is my question like ,If do_IRQ() disables the interrupt delivery on the line(I am assuming it disables the interrupt delivery to all other processors on that line),then what about the other devices which are sharing same interrupt line and trying to send interrupts to processors.
IIRC, it is "queued"....meaning, it will be sent at the earliest moment possible once it is back enabled. PS: I remember there is difference between disabled and "masked"...disabled is like "temporary shut down" while masked is like "no way you can get in...unless I say so...so no queue"... CMIIW people... -- regards, Mulyadi Santosa Freelance Linux trainer and consultant blog: the-hydra.blogspot.com training: mulyaditraining.blogspot.com
participants (2)
-
Mulyadi Santosa -
santhosh kumars