Messages in this thread | | | Date | Wed, 26 Sep 2012 10:04:39 -0700 | From | Tejun Heo <> | Subject | Re: [PATCH 00/10] workqueue: restructure flush_workqueue() and start all flusher at the same time |
| |
Hello, again.
On Wed, Sep 26, 2012 at 09:49:58AM -0700, Tejun Heo wrote: > > The simple version of flush_workqueue() which I sent yesterday is "chained", > > because it forces overflow flushers wait for free color and forces only one > > flusher for one color. > > > > Since "not chaining" is important/essential. I sent a new draft implement today. > > it uses multiple queues, one for each color(like SRCU). > > this version is also simple, it remove 90 LOC. > > I'll review your patch but the current implementation is enough on > that regard. I was trying to advise against going for two-color > scheme.
So, I like it. Two things.
* I think we still want to optimize noop case. IOW, please keep the early exit path for cases where there's no work item to flush.
* Can you please redo the patch series so that it doesn't go too much roundabout?
Thanks.
-- tejun
| |