Re: [PATCH v4 3/3] [Doc] Workqueue: add WQ_PERCPU

From: Frederic Weisbecker
Date: Fri Jun 13 2025 - 09:13:21 EST


Le Thu, Jun 12, 2025 at 03:33:35PM +0200, Marco Crivellari a écrit :
> Workqueue documentation upgraded with the description
> of the new added flag, WQ_PERCPU.
>
> Also the WQ_UNBOUND flag documentation has been integrated
>
> Suggested-by: Tejun Heo <tj@xxxxxxxxxx>
> Signed-off-by: Marco Crivellari <marco.crivellari@xxxxxxxx>

Thanks, a few spelling nits below:

> ---
> Documentation/core-api/workqueue.rst | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/Documentation/core-api/workqueue.rst b/Documentation/core-api/workqueue.rst
> index e295835fc116..ae63a648a51b 100644
> --- a/Documentation/core-api/workqueue.rst
> +++ b/Documentation/core-api/workqueue.rst
> @@ -183,6 +183,12 @@ resources, scheduled and executed.
> BH work items cannot sleep. All other features such as delayed queueing,
> flushing and canceling are supported.
>
> +``WQ_PERCPU``
> + Work items queued to a per-cpu wq are bound to that specific CPU.

s/that/a

> + This flag it's the right choice when cpu locality is important.

s/it's/is

> +
> + This flag is the complement of ``WQ_UNBOUND``.
> +
> ``WQ_UNBOUND``
> Work items queued to an unbound wq are served by the special
> worker-pools which host workers which are not bound to any
> @@ -200,6 +206,10 @@ resources, scheduled and executed.
> * Long running CPU intensive workloads which can be better
> managed by the system scheduler.
>
> + **Note:** This flag will be removed in future and all the work

in the future

> + items that dosen't need to be bound to a specific CPU, should not

s/dosen't/don't

> + use this flags.

flag.

But since the support for this is not there yet, perhaps this note
should be added later? Ie: if someone omits the WQ_UNBOUND flag currently,
the workqueue will be percpu.

Thanks.

> +
> ``WQ_FREEZABLE``
> A freezable wq participates in the freeze phase of the system
> suspend operations. Work items on the wq are drained and no
> --
> 2.49.0
>

--
Frederic Weisbecker
SUSE Labs