Re: [RFC PATCH 0/2] Add queue_*() functions and prefer per-cpu workqueue and flag

From: Tejun Heo

Date: Fri May 08 2026 - 11:16:00 EST


Hello,

On Fri, May 08, 2026 at 02:09:20PM +0200, Frederic Weisbecker wrote:
> Isn't WQ_POWER_EFFICIENT enough for what we want here? ie: it does a per-cpu
> preference except when some config is enabled or isolation is on. It could be
> renamed to WQ_PREFER_PERCPU to generalize its meaning for more than just power
> purposes.

That may satisfy the minimum requirement but I think it'd be a shame if we
do all the work and still leave the semantics overloaded, which was the
initial problem to begin with. I really want the intent of each specific
selection expressed unambigiously.

Besides, even outside of isolation use cases, having relaxed affinity can be
useful as it gives the scheduler more leeway in placement decisions. e.g.
There's no real downsides to running such work item on SMT pair or maybe
that CPU is particularly overloaded due to net irq and rx processing and
some work items are better off running on another CPU in the same LLC and so
on. If we can manage so without causing perf issues, I want the default to
be soft affinity, not a hard one.

Thanks.

--
tejun