Re: [RFC PATCH v2] workqueue: Introduce a way to set percpu worker_pool's scheduler

From: Tejun Heo
Date: Mon Jan 08 2018 - 09:29:14 EST


Hello,

On Wed, Dec 27, 2017 at 10:55:41AM +0800, Wen Yang wrote:
> @@ -144,6 +145,11 @@ struct workqueue_attrs {
> * doesn't participate in pool hash calculations or equality comparisons.
> */
> bool no_numa;
> +
> + /**
> + * @sched_attr: set kworker's scheduler
> + */
> + struct sched_attr sched_attr;
> };

It's added as a part of workqueue_attrs but implemented separately.
Can you please do the following instead?

* Add scheduler type to wq_attrs so that unbound workqueues can be
configured. Also, we don't need both prio and nice, right?

* Rename system_wq's wq->name from "events" to "system_percpu", and
similarly for the similarly named workqueues.

* Enable wq_attrs (only the applicable part should show up in the
interface) for system_percpu and system_percpu_highpri, and use that
to change the attributes of the percpu pools.

Thanks.

--
tejun