Well 2.6.39 seems to have changed and the flow as I understand for interrupt processing is do_IRQ -> irq_enter -> handle_irq -> ... but in above flow i cant find local_irq_enable anywhere; is there some different trick used to enable the interrupts ? ----- Forwarded Message ---- From: santhosh kumars <karuna.linux@gmail.com> To: manish honap <manish_honap_vit@yahoo.co.in> Cc: kernelnewbies@kernelnewbies.org Sent: Fri, 29 July, 2011 3:31:10 PM Subject: Re: Question about interrupts On Fri, Jul 29, 2011 at 3:16 PM, manish honap <manish_honap_vit@yahoo.co.in> wrote:
Hello all,
When interrupts are handled through interrupt gate cpu automatically clears IF flag.
but to allow nesting kernel sets the IF flag in handle_irq_event - for 2.6.11
but in 2.6.39 how the interrupts are re-enabled so as to facilitate nesting of interrupts I am unable to find local_irq_enable in do_IRQ() I think in handle_IRQ_event event again interrupts are enabled if (!(action->flags & IRQF_DISABLED)) local_irq_enable_in_hardirq();
Thanks in advance.
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies