Re: [PATCHSET] workqueue: remove gcwq and make worker_pool the only backend abstraction

Tejun Heo
2013-01-23T01:08:07Z

Hey.

On Tue, Jan 22, 2013 at 02:37:02PM +0900, Joonsoo Kim wrote:
> > It seems like we'll need to support worker pools with custom
> > attributes, which is planned to be implemented as extra worker_pools
> > for the unbound CPU. Removing gcwq and having worker_pool as the top
> > level abstraction makes things much simpler for such designs. Also,
> > there's scalability benefit to not sharing locking and busy hash among
> > different worker pools as worker pools w/ custom attributes are likely
> > to have widely different memory / cpu locality characteristics.
>
> Could you tell me why extra worker_pools with custom attributes are needed?
> Or could you give a reference link for this?

Currently, there are two expected users - writeback and crypto. The
former currently implements its own worker pool and the latter is
using per-cpu workqueue but not particularly happy with it. Being
bound to the issuing CPU seems a bit too limiting.

Thanks.

--
tejun