On Monday 22,August,2011 12:07 AM, Ripunjay Tripathi wrote:
> While studying Linux interrupt handling I found that Tasklets and
> SoftIRQs are two different methods of performing "bottom half" (lesser
> priority work). I understand this (quite genuine need).
>
> Difference being, SoftIRQs are re-entarant while a Tasklet is NOT.
> That same SoftIRQ can run on different CPUs while this is NOT the case
> with Tasklets.
>
>   
The simple reason why it can run on different CPU, is because it is
using DIFFERENT hardware resources (eg, each CPU potentially has its own
interrupt table - IDT), whereas tasklet are all synchronized using a
COMMON OS memory-based mechanism, so unless u multi-thread that
mechanism, it not possible to duplicate it across different CPU.

> Though I understand this from surface but I fail in understanding the
> requirements of the two features. In what case(s) we may use these
> facilities ?
>
> Also what do we mean by Tasklets are made upon SoftIRQs ? In one of
> the books I read, in LKML there were debates upon removing Tasklets. I
> got completely confused why one would bring in such a feature ? Some
> shortsightedness (No offense meant) ?
>
> Any pointers on this will help a lot.
>
> Thanks for your time :)
> Ripunjay Tripathi
>
>
>   

Reply via email to