On Fri, 06 Apr 2007 18:38:40 -0400
Jeff Garzik <jeff@garzik.org> wrote:
I suspect there are quite a few kernel threads which don't really need to
be threads at all: the code would quite happily work if it was changed to
use keventd, via schedule_work() and friends. But kernel threads are
somewhat easier to code for.
I also suspect that there are a number of workqueue threads which
could/should have used create_singlethread_workqueue(). Often this is
because the developer just didn't think to do it.
otoh, a lot of these inefficeincies are probably down in scruffy drivers
rather than in core or top-level code.
<I also wonder where all these parented-by-init,
presumably-not-using-kthread kernel threads are coming from>
-