Re: Advantage of Tasklet as the bottom half of interrupt handler.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jan 30, 2003 at 09:18:17AM +0100, Jan Hudec wrote:
> On Wed, Jan 29, 2003 at 08:27:48PM -0800, Wayne Yen wrote:
> > While the bottom half (implemented via tasklet) of an interrupt
> > handler is executing, can another bottom half (similarly implemented
> > via tasklet) of another interrupt handler starts execute.  My
> > assumption is no.  The ultimate question, then, is that what is the
> > advantage of implementing tasklet to handle the bottom half over the
> > old bottom half implementation?
> 
> IIRC botomhlaves are hardcoded and activated by seting bits in a 32-bit
> bitfield. While tasklets are enabled by puting a pointer in a list and
> thus their number is not limited.

Seems I was wrong (I think I had outdated information). From the code it
really looks like the bottomhalves are run by a tasklet on a separate
queue (run first), with global lock (so tasklets can run on two CPUs
parallel, but bottomhalves can't) and disabling. It looks (see the
comment at kernel/softirq.c before global_bh_lock) like bottomhalves
exist mostly for backward compatibility and tasklets should be used in
new code.

Network has it's own "softirq"s different from tasklets and bhs and
I don't see the reason, so there might be additional quirks to it.

-------------------------------------------------------------------------------
						 Jan 'Bulb' Hudec <bulb@ucw.cz>
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux