Re: [PATCH-wq v2 0/5] workqueue: Enable unbound cpumask update on ordered workqueues

From: Juri Lelli
Date: Mon Feb 05 2024 - 04:48:46 EST


Hi,

On 03/02/24 10:43, Waiman Long wrote:
> v2:
> - [v1] https://lore.kernel.org/all/20240130183336.511948-1-longman@xxxxxxxxxx/
> - Rebased on top of wq's for-v6.9 branch.
> - Use the new pwq_tryinc_nr_active() mechanism to freeze the new
> pwq of an ordered workqueue until the old pwq has been properly
> drained to maintain ordering.
> - Make rescuer follow changes in workqueue unbound cpumask as well
> as its sysfs cpumask, if available.
>
> Ordered workqueues does not currently follow changes made to the
> global unbound cpumask because per-pool workqueue changes may break
> the ordering guarantee. IOW, a work function in an ordered workqueue
> may run on a cpuset isolated CPU.
>
> This series enables ordered workqueues to follow changes made to
> the global unbound cpumask by temporaily freeze the newly allocated
> pool_workqueue by using the new frozen flag to freeze execution of
> newly queued work items until the old pwq has been properly flushed.
>
> The cpumask of the rescuer task of each workqueue is also made to follow
> changes in workqueue unbound cpumask as well as its sysfs cpumask,
> if available.

>From a testing point of view this now looks good to me.

Tested-by: Juri Lelli <juri.lelli@xxxxxxxxxx>

Best,
Juri