* Re: [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq
2025-10-30 16:38 [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq Marco Crivellari
@ 2025-10-30 16:56 ` Dave Jiang
2025-10-31 14:49 ` Ira Weiny
` (2 subsequent siblings)
3 siblings, 0 replies; 7+ messages in thread
From: Dave Jiang @ 2025-10-30 16:56 UTC (permalink / raw)
To: Marco Crivellari, linux-kernel, linux-cxl
Cc: Tejun Heo, Lai Jiangshan, Frederic Weisbecker,
Sebastian Andrzej Siewior, Michal Hocko, Davidlohr Bueso,
Jonathan Cameron, Alison Schofield, Vishal Verma, Ira Weiny,
Dan Williams
On 10/30/25 9:38 AM, Marco Crivellari wrote:
> Currently if a user enqueue 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.
>
> This lack of consistency cannot be addressed without refactoring the API.
>
> system_wq should be the per-cpu workqueue, yet in this name nothing makes
> that clear, so replace system_wq with system_percpu_wq.
>
> The old wq (system_wq) will be kept for a few release cycles.
>
> Suggested-by: Tejun Heo <tj@kernel.org>
> Signed-off-by: Marco Crivellari <marco.crivellari@suse.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>> ---
> drivers/cxl/pci.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/cxl/pci.c b/drivers/cxl/pci.c
> index bd100ac31672..0be4e508affe 100644
> --- a/drivers/cxl/pci.c
> +++ b/drivers/cxl/pci.c
> @@ -136,7 +136,7 @@ static irqreturn_t cxl_pci_mbox_irq(int irq, void *id)
> if (opcode == CXL_MBOX_OP_SANITIZE) {
> mutex_lock(&cxl_mbox->mbox_mutex);
> if (mds->security.sanitize_node)
> - mod_delayed_work(system_wq, &mds->security.poll_dwork, 0);
> + mod_delayed_work(system_percpu_wq, &mds->security.poll_dwork, 0);
> mutex_unlock(&cxl_mbox->mbox_mutex);
> } else {
> /* short-circuit the wait in __cxl_pci_mbox_send_cmd() */
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq
2025-10-30 16:38 [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq Marco Crivellari
2025-10-30 16:56 ` Dave Jiang
@ 2025-10-31 14:49 ` Ira Weiny
2025-10-31 16:50 ` Marco Crivellari
2025-10-31 16:16 ` Davidlohr Bueso
2025-11-03 23:44 ` Dave Jiang
3 siblings, 1 reply; 7+ messages in thread
From: Ira Weiny @ 2025-10-31 14:49 UTC (permalink / raw)
To: Marco Crivellari, linux-kernel, linux-cxl
Cc: Tejun Heo, Lai Jiangshan, Frederic Weisbecker,
Sebastian Andrzej Siewior, Marco Crivellari, Michal Hocko,
Davidlohr Bueso, Jonathan Cameron, Dave Jiang, Alison Schofield,
Vishal Verma, Ira Weiny, Dan Williams
Marco Crivellari wrote:
> Currently if a user enqueue 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.
>
> This lack of consistency cannot be addressed without refactoring the API.
>
> system_wq should be the per-cpu workqueue, yet in this name nothing makes
> that clear, so replace system_wq with system_percpu_wq.
>
> The old wq (system_wq) will be kept for a few release cycles.
A reference to:
commit 128ea9f6ccfb6960293ae4212f4f97165e42222d
Author: Marco Crivellari <marco.crivellari@suse.com>
Date: Sat Jun 14 15:35:29 2025 +0200
workqueue: Add system_percpu_wq and system_dfl_wq
...
Would have been nice just to save reviewers time. Regardless.
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
[snip]
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq
2025-10-31 14:49 ` Ira Weiny
@ 2025-10-31 16:50 ` Marco Crivellari
0 siblings, 0 replies; 7+ messages in thread
From: Marco Crivellari @ 2025-10-31 16:50 UTC (permalink / raw)
To: Ira Weiny
Cc: linux-kernel, linux-cxl, Tejun Heo, Lai Jiangshan,
Frederic Weisbecker, Sebastian Andrzej Siewior, Michal Hocko,
Davidlohr Bueso, Jonathan Cameron, Dave Jiang, Alison Schofield,
Vishal Verma, Dan Williams
On Fri, Oct 31, 2025 at 3:47 PM Ira Weiny <ira.weiny@intel.com> wrote:
>[...]
> A reference to:
>
> commit 128ea9f6ccfb6960293ae4212f4f97165e42222d
> Author: Marco Crivellari <marco.crivellari@suse.com>
> Date: Sat Jun 14 15:35:29 2025 +0200
>
> workqueue: Add system_percpu_wq and system_dfl_wq
>
> ...
>
> Would have been nice just to save reviewers time. Regardless.
>
> Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Many thanks, and sorry for the trouble!
--
Marco Crivellari
L3 Support Engineer, Technology & Product
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq
2025-10-30 16:38 [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq Marco Crivellari
2025-10-30 16:56 ` Dave Jiang
2025-10-31 14:49 ` Ira Weiny
@ 2025-10-31 16:16 ` Davidlohr Bueso
2025-11-03 23:44 ` Dave Jiang
3 siblings, 0 replies; 7+ messages in thread
From: Davidlohr Bueso @ 2025-10-31 16:16 UTC (permalink / raw)
To: Marco Crivellari
Cc: linux-kernel, linux-cxl, Tejun Heo, Lai Jiangshan,
Frederic Weisbecker, Sebastian Andrzej Siewior, Michal Hocko,
Jonathan Cameron, Dave Jiang, Alison Schofield, Vishal Verma,
Ira Weiny, Dan Williams
On Thu, 30 Oct 2025, Marco Crivellari wrote:
>Currently if a user enqueue 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.
>
>This lack of consistency cannot be addressed without refactoring the API.
>
>system_wq should be the per-cpu workqueue, yet in this name nothing makes
>that clear, so replace system_wq with system_percpu_wq.
>
>The old wq (system_wq) will be kept for a few release cycles.
>
>Suggested-by: Tejun Heo <tj@kernel.org>
>Signed-off-by: Marco Crivellari <marco.crivellari@suse.com>
Acked-by: Davidlohr Bueso <dave@stgolabs.net>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq
2025-10-30 16:38 [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq Marco Crivellari
` (2 preceding siblings ...)
2025-10-31 16:16 ` Davidlohr Bueso
@ 2025-11-03 23:44 ` Dave Jiang
2025-11-04 8:59 ` Marco Crivellari
3 siblings, 1 reply; 7+ messages in thread
From: Dave Jiang @ 2025-11-03 23:44 UTC (permalink / raw)
To: Marco Crivellari, linux-kernel, linux-cxl
Cc: Tejun Heo, Lai Jiangshan, Frederic Weisbecker,
Sebastian Andrzej Siewior, Michal Hocko, Davidlohr Bueso,
Jonathan Cameron, Alison Schofield, Vishal Verma, Ira Weiny,
Dan Williams
On 10/30/25 9:38 AM, Marco Crivellari wrote:
> Currently if a user enqueue 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.
>
> This lack of consistency cannot be addressed without refactoring the API.
>
> system_wq should be the per-cpu workqueue, yet in this name nothing makes
> that clear, so replace system_wq with system_percpu_wq.
>
> The old wq (system_wq) will be kept for a few release cycles.
>
> Suggested-by: Tejun Heo <tj@kernel.org>
> Signed-off-by: Marco Crivellari <marco.crivellari@suse.com>
Applied to cxl/next
952e9057e66c17a9718232664368ffdaca468f93
> ---
> drivers/cxl/pci.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/cxl/pci.c b/drivers/cxl/pci.c
> index bd100ac31672..0be4e508affe 100644
> --- a/drivers/cxl/pci.c
> +++ b/drivers/cxl/pci.c
> @@ -136,7 +136,7 @@ static irqreturn_t cxl_pci_mbox_irq(int irq, void *id)
> if (opcode == CXL_MBOX_OP_SANITIZE) {
> mutex_lock(&cxl_mbox->mbox_mutex);
> if (mds->security.sanitize_node)
> - mod_delayed_work(system_wq, &mds->security.poll_dwork, 0);
> + mod_delayed_work(system_percpu_wq, &mds->security.poll_dwork, 0);
> mutex_unlock(&cxl_mbox->mbox_mutex);
> } else {
> /* short-circuit the wait in __cxl_pci_mbox_send_cmd() */
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [PATCH] cxl/pci: replace use of system_wq with system_percpu_wq
2025-11-03 23:44 ` Dave Jiang
@ 2025-11-04 8:59 ` Marco Crivellari
0 siblings, 0 replies; 7+ messages in thread
From: Marco Crivellari @ 2025-11-04 8:59 UTC (permalink / raw)
To: Dave Jiang
Cc: linux-kernel, linux-cxl, Tejun Heo, Lai Jiangshan,
Frederic Weisbecker, Sebastian Andrzej Siewior, Michal Hocko,
Davidlohr Bueso, Jonathan Cameron, Alison Schofield, Vishal Verma,
Ira Weiny, Dan Williams
On Tue, Nov 4, 2025 at 12:44 AM Dave Jiang <dave.jiang@intel.com> wrote:
>[...]
> Applied to cxl/next
> 952e9057e66c17a9718232664368ffdaca468f93
Many thanks Dave!
--
Marco Crivellari
L3 Support Engineer, Technology & Product
^ permalink raw reply [flat|nested] 7+ messages in thread