]> Gentwo Git Trees - linux/.git/commit
net: replace use of system_wq with system_percpu_wq
authorMarco Crivellari <marco.crivellari@suse.com>
Thu, 18 Sep 2025 14:24:26 +0000 (16:24 +0200)
committerJakub Kicinski <kuba@kernel.org>
Tue, 23 Sep 2025 00:40:30 +0000 (17:40 -0700)
commit5fd8bb982e10f29e856ef71072609af5ce55d281
tree3fe1eced876cffb4938404f42c5e4b6f997889f9
parent9870d350e45a5724ee25f77aa0b6d053c9b766db
net: replace use of system_wq with system_percpu_wq

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 consistentcy cannot be addressed without refactoring the API.

system_unbound_wq should be the default workqueue so as not to enforce
locality constraints for random work whenever it's not required.

Adding system_dfl_wq to encourage its use when unbound work should be used.

The old system_unbound_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>
Link: https://patch.msgid.link/20250918142427.309519-3-marco.crivellari@suse.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
14 files changed:
drivers/net/ethernet/sfc/efx_channels.c
drivers/net/ethernet/sfc/siena/efx_channels.c
drivers/net/phy/sfp.c
net/bridge/br_cfm.c
net/bridge/br_mrp.c
net/ceph/mon_client.c
net/core/skmsg.c
net/devlink/core.c
net/ipv4/inet_fragment.c
net/netfilter/nf_conntrack_ecache.c
net/openvswitch/dp_notify.c
net/rfkill/input.c
net/smc/smc_core.c
net/vmw_vsock/af_vsock.c