Re: [RFC PATCHSET] workqueue: implement concurrency managed workqueue

From: David Howells
Date: Thu Oct 01 2009 - 08:57:29 EST



Sounds interesting as a replacement for slow-work. Some thoughts for you:

The most important features of slow-work are:

(1) Work items are not re-entered whilst they are executing.

(2) The slow-work facility keeps references on its work items by asking the
client to get and put on the client's refcount.

(3) The slow-work facility can create a lot more threads than the number of
CPUs on a system, and the system doesn't grind to a halt if they're all
taken up with long term I/O (performing several mkdirs for example).

I think you have (1) and (3) covered, but I'm unsure about (2).

Also, does it actually make sense to bind threads that are performing
long-term I/O to particular CPUs? Threads that are going to spend a lot more
time sleeping on disk I/O than actually running on a CPU?

David
--
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/