About interrupt handler

Kosta Zertsekel zertsekel at gmail.com
Sun Feb 26 07:11:54 EST 2012


On Fri, Feb 24, 2012 at 11:18 PM, Dave Hylands <dhylands at gmail.com> wrote:
> HI Kosta,
>
> On Fri, Feb 24, 2012 at 1:08 PM, Dave Hylands <dhylands at gmail.com> wrote:
>> Hi Kosta,
>>
>> On Fri, Feb 24, 2012 at 1:19 AM, Kosta Zertsekel <zertsekel at gmail.com> wrote:
>>>>> I'm begin to learn the Kernel and i'm reading <<Linux kernel
>>>>> development>>.It says "This is an important point, always keep in mind that
>>>>> all interrupt handler has interrupted other code(possibly even another
>>>>> interrupt handler on a different line)".What i am not able to understand is
>>>>> how a interrupt handler be interrupted ? DID NOT it uninterrupted?
>>>>
>>>> It depends on the architecture and the interrupt controller being
>>>> used, and the driver code itself.
>>>>
>>>> Normally, when an interrupt fires, that particular interrupt will be
>>>> masked and your own handler won't interrupt itself, but you may very
>>>> well be interrupted by other interrupts.
>>>
>>> Can you please point out some code for explanation?
>>
>> Could you be a bit more specific about what example you're looking for?
>
> I also believe that things have changed (since I looked at this in any
> detail). It seems that interrupts are now run with other interrupts
> disabled.
> See: http://lwn.net/Articles/364583/ and look at the IRQF_DISABLED discussion.

Oh, yes, it seems it does as of kernel 3.3.0. But I fail to accept the
argument...
What happens for NAPI drivers stalling the kernel - *nobody* can
interrupt them...
Is there some reliable IRQ deep dive explanation - I need one just to
wrap my mind over the issue?
Thanks,
--- KostaZ



More information about the Kernelnewbies mailing list