Messages in this thread | | | Date | Sat, 19 Jun 2010 11:08:51 +0200 | From | Andi Kleen <> | Subject | Re: Overview of concurrency managed workqueue |
| |
> I see. The thing is that if you have "as soon as possible" + "high > priority", you're basically required to have a dedicated worker or > dedicated pool of them. Making cmwq to support some level of priority > definitely is possible (multiple prioritized queues or pushing work at > the front at the simplest) but for such emergency works it doesn't > make sense to share the usual worker pool, as resource pressure can > easily make any work wait regardless of where they're in the queue.
I think it's reasonable to just put on front. The individual items shouldn't take that long, right?
(in fact I have an older patch for work queues which implemented that)
> If there are multiple of such use cases, it would make sense to create > a prioritized worker pools along with prioritized per-cpu queues but > if there are only a few of them, I think it makes more sense to use > dedicated threads for them. Do those threads need to be per-cpu?
Not strictly, although it might be useful on a error flood when a whole DIMM goes bad.
-Andi
-- ak@linux.intel.com -- Speaking for myself only.
| |