Re: [RFC PATCH 0/6] Convert all tasklets to workqueues

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Steven Rostedt
Date: Friday, June 29, 2007 - 6:41 am

On Fri, 29 Jun 2007, Alexey Kuznetsov wrote:

Noted ;-)


Not a very accurate measurement (jiffies that is).


[...]


Since the work queue *is* a thread, you are running a busy loop here. Even
though you call schedule, this thread still may have quota available, and
will not yeild to the work queue.  Unless ofcourse this caller is of lower
priority. But even then, I'm not sure how quickly the schedule would
choose the work queue.



 > 			cnt++;


I do really want to point out something in the Subject line. **RFC**
:-)

I had very little hope for this magic switch to get into mainline. (maybe
get it into -mm)  But the thing was is that tasklets IMHO are over used.
As Ingo said, there are probably only 2 or 3 places in the kernel that a
a switch to work queue conversion couldn't solve. Those places could then
probably be solved by a different design (yes that would take work).

Tasklets are there and people will continue to use them when they
shouldn't for as long as they exist. Tasklets are there because there
wasn't work queues or kthreads at the time of solving the solution that
tasklets solved.

So if you can still keep the same performance without tasklets, I say we
get rid of them. I've also meet too many device driver writers that want
the lowest possible latency for their device, and do so by sacrificing the
latency of other things in the system that may be even more critical.

Also note, that the more tasklets we have, the higher the latency will be
for other tasklets. There's only two prios you can currently give a
tasklet, so competing devices will need to fight each other without the
admin being able to have as much control over the result.

-- Steve

-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Thu Jun 21, 9:00 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Christoph Hellwig, (Fri Jun 22, 12:09 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 12:51 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Christoph Hellwig, (Fri Jun 22, 12:53 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 4:23 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Fri Jun 22, 5:32 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 5:38 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Fri Jun 22, 5:58 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 6:12 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Andrew Morton, (Fri Jun 22, 6:13 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 6:26 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Fri Jun 22, 6:35 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Andrew Morton, (Fri Jun 22, 6:41 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 7:00 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Arjan van de Ven, (Fri Jun 22, 7:25 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Fri Jun 22, 7:27 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Fri Jun 22, 7:42 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Arjan van de Ven, (Fri Jun 22, 7:43 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Linus Torvalds, (Fri Jun 22, 10:16 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Fri Jun 22, 10:31 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Christoph Hellwig, (Fri Jun 22, 11:32 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 1:40 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Christoph Hellwig, (Fri Jun 22, 2:00 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 2:10 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Thomas Gleixner, (Fri Jun 22, 2:13 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Linus Torvalds, (Fri Jun 22, 2:37 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Daniel Walker, (Fri Jun 22, 2:53 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 2:59 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 3:09 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 3:15 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Daniel Walker, (Fri Jun 22, 3:15 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Roland Dreier, (Fri Jun 22, 3:43 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 22, 3:44 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Fri Jun 22, 3:58 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Daniel Walker, (Fri Jun 22, 4:28 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Stephen Hemminger, (Fri Jun 22, 10:14 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Dave Airlie, (Fri Jun 22, 11:23 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues , Jonathan Corbet, (Sun Jun 24, 8:16 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues , Steven Rostedt, (Sun Jun 24, 8:52 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Tilman Schmidt, (Mon Jun 25, 9:50 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Mon Jun 25, 10:06 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Mon Jun 25, 12:11 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Stephen Hemminger, (Mon Jun 25, 12:52 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Mon Jun 25, 1:31 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Tilman Schmidt, (Mon Jun 25, 1:50 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Mon Jun 25, 2:03 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Mon Jun 25, 2:15 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Stefan Richter, (Mon Jun 25, 4:36 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues , Jonathan Corbet, (Mon Jun 25, 5:00 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Mon Jun 25, 5:46 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Mon Jun 25, 5:52 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Dan Williams, (Mon Jun 25, 6:46 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Mon Jun 25, 7:01 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Dan Williams, (Mon Jun 25, 7:12 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Jeff Garzik, (Wed Jun 27, 10:48 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Thu Jun 28, 2:23 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Thu Jun 28, 5:37 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Alexey Kuznetsov, (Thu Jun 28, 7:38 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Jeff Garzik, (Thu Jun 28, 8:17 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Jeff Garzik, (Thu Jun 28, 8:23 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Thu Jun 28, 8:54 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Thu Jun 28, 9:00 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Oleg Nesterov, (Thu Jun 28, 9:37 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Jeff Garzik, (Thu Jun 28, 10:26 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Jeff Garzik, (Thu Jun 28, 10:44 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Dan Williams, (Thu Jun 28, 11:02 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Andrew Morton, (Thu Jun 28, 11:19 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Thu Jun 28, 1:07 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Thu Jun 28, 1:46 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Dan Williams, (Thu Jun 28, 2:23 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Dan Williams, (Thu Jun 28, 2:40 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Thu Jun 28, 3:00 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Thu Jun 28, 3:01 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Alexey Kuznetsov, (Fri Jun 29, 4:34 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Duncan Sands, (Fri Jun 29, 4:48 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 29, 5:29 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Alexey Kuznetsov, (Fri Jun 29, 6:25 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Alexey Kuznetsov, (Fri Jun 29, 6:36 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Steven Rostedt, (Fri Jun 29, 6:41 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Ingo Molnar, (Fri Jun 29, 6:43 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Duncan Sands, (Fri Jun 29, 7:01 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Jeff Garzik, (Fri Jun 29, 7:24 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Oleg Nesterov, (Fri Jun 29, 7:26 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Alexey Kuznetsov, (Fri Jun 29, 7:27 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Alexey Kuznetsov, (Fri Jun 29, 8:23 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Oleg Nesterov, (Fri Jun 29, 8:51 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Alexey Kuznetsov, (Fri Jun 29, 9:21 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Alexey Kuznetsov, (Fri Jun 29, 9:34 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Oleg Nesterov, (Fri Jun 29, 9:52 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Oleg Nesterov, (Fri Jun 29, 10:09 am)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Alexey Kuznetsov, (Fri Jun 29, 12:04 pm)
Re: [RFC PATCH 0/6] Convert all tasklets to workqueues, Oleg Nesterov, (Sat Jun 30, 4:25 am)