Re: [PATCH 03/19] scheduler: implement workqueue scheduler class

From: Linus Torvalds
Date: Thu Oct 01 2009 - 13:00:05 EST




On Thu, 1 Oct 2009, Tejun Heo wrote:
>
> Implement workqueue scheduler class. Workqueue sched_class inherits
> fair sched_class and behaves exactly the same as sched_class except
> that it has two callback functions which get called when a task is put
> to sleep and wakes up and doesn't allow switching to different
> scheduler class.

So this looks odd to me.

I agree completely with the callback functions, but what I don't agree
with is that this is somehow workqueue-related. I bet that others could
use this, and in fact, I suspect that it should not be tied to the
scheduler class at all, but to the _thread_.

Just as an example, I could imagine that we would do lock_kernel()
releasing the kernel lock on scheduling (and re-taking it on wakeup) as a
callback. Or async IO handling - both done independently of any
"workqueue" logic.

So tying this to the scheduler class seems a bit odd. But maybe I'm
missing something?

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/