Messages in this thread | | | Date | Mon, 25 Jun 2007 12:52:03 -0700 | From | Stephen Hemminger <> | Subject | Re: [RFC PATCH 0/6] Convert all tasklets to workqueues |
| |
On Mon, 25 Jun 2007 18:50:03 +0200 Tilman Schmidt <tilman@imap.cc> wrote:
> Ingo Molnar <mingo@elte.hu> wrote: > > so how about the following, different approach: anyone who has a tasklet > > in any performance-sensitive codepath, please yell now.
Getting rid of tasklet's may seem like a good idea. But doing it by changing them all to workqueue's would have bad consequences for networking.
The first issue is that it would change the semantic assumptions in the places where tasklets are used. Many places "know" that a tasklet runs in soft irq context so extra locking is not needed.
The performance overhead of changing to workqueue's could also be disastrous for some devices. There are 10G device drivers that use tasklets to handle transmit completion.
Here is a more detailed list how network devices are using tasklet's
Receive packet handling: ifb, ppp, ipw2200, ipw2100 Receive buffer refill: acenic, s2io Receive & Transmit: sc9031, sundance Transmit buffer allocation: smc91x Phy handling: skge
Sorry, if you are going to get rid of tasklets, you need to fix all the network drivers first.
-- Stephen Hemminger <shemminger@linux-foundation.org> - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |