On Thu, Nov 6, 2025 at 4:37 PM Philipp Stanner <[email protected]> wrote:
>
> On Thu, 2025-11-06 at 16:01 +0100, Marco Crivellari wrote:
> > In the general workqueue implementation, if a user enqueues a work item
> > using schedule_delayed_work() the used wq is "system_wq" (per-cpu wq)
> > while queue_delayed_work() use WORK_CPU_UNBOUND (used when a cpu is not
> > specified). The same applies to schedule_work() that is using system_wq
> > and queue_work(), that makes use again of WORK_CPU_UNBOUND.
>
> Alright, just to be sure:
> Behavior doesn't change and system_percpu_wq is then still a workqueue
> where we can submit normal delayed_work?
>
> The scheduler's timeout mechanism relies on scheduling and canceling
> delayed work items.

Correct, system_percpu_wq is the replacement of system_wq. They are the same.
We chosen to add a new workqueue instead of rename system_wq, to make the
transition process smooth, but you can look at all of this as a rename
of system_wq
into system_percpu_wq, basically.

You can confirm by looking at the header file
"include/linux/workqueue.h", and search for
system_wq. There is only its definition, everything has been replaced
with system_percpu_wq.

> Thanks for the updated commit message, looks great.

Perfect! :-)

Thanks!

-- 

Marco Crivellari

L3 Support Engineer, Technology & Product

Reply via email to