[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250926-vfs-workqueue-6bff38a4de55@brauner>
Date: Fri, 26 Sep 2025 16:19:01 +0200
From: Christian Brauner <brauner@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Christian Brauner <brauner@...nel.org>,
linux-fsdevel@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [GIT PULL 07/12 for v6.18] workqueue
Hey Linus,
/* Summary */
This contains various workqueue changes affecting the filesystem layer.
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 replaces the use of system_wq and system_unbound_wq. system_wq is a
per-CPU workqueue which isn't very obvious from the name and
system_unbound_wq is to be used when locality is not required.
So this renames system_wq to system_percpu_wq, and system_unbound_wq to
system_dfl_wq.
This also adds a new WQ_PERCPU flag to allow the fs subsystem users to
explicitly request the use of per-CPU behavior. Both WQ_UNBOUND and
WQ_PERCPU flags coexist for one release cycle to allow callers to
transition their calls. WQ_UNBOUND will be removed in a next release
cycle.
/* Testing */
gcc (Debian 14.2.0-19) 14.2.0
Debian clang version 19.1.7 (3+b1)
No build failures or warnings were observed.
/* Conflicts */
Merge conflicts with mainline
=============================
No known conflicts.
Merge conflicts with other trees
================================
[1] https://lore.kernel.org/linux-next/aNEKzrMMxLAVHGIn@finisterre.sirena.org.uk
This will have a merge conflict with changes in the quota tree.
Steven's proposed resolution is correct.
No known conflicts.
The following changes since commit 8f5ae30d69d7543eee0d70083daf4de8fe15d585:
Linux 6.17-rc1 (2025-08-10 19:41:16 +0300)
are available in the Git repository at:
git@...olite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.18-rc1.workqueue
for you to fetch changes up to 56ce6c8b11a95c65764e27cb6021b1e98ccc4212:
Merge patch series "fs: replace wq users and add WQ_PERCPU to alloc_workqueue() users" (2025-09-19 16:15:12 +0200)
Please consider pulling these changes from the signed vfs-6.18-rc1.workqueue tag.
Thanks!
Christian
----------------------------------------------------------------
vfs-6.18-rc1.workqueue
----------------------------------------------------------------
Christian Brauner (1):
Merge patch series "fs: replace wq users and add WQ_PERCPU to alloc_workqueue() users"
Marco Crivellari (3):
fs: replace use of system_unbound_wq with system_dfl_wq
fs: replace use of system_wq with system_percpu_wq
fs: WQ_PERCPU added to alloc_workqueue users
fs/afs/callback.c | 4 ++--
fs/afs/main.c | 4 ++--
fs/afs/write.c | 2 +-
fs/aio.c | 2 +-
fs/bcachefs/btree_write_buffer.c | 2 +-
fs/bcachefs/io_read.c | 8 ++++----
fs/bcachefs/journal_io.c | 2 +-
fs/bcachefs/super.c | 10 +++++-----
fs/btrfs/block-group.c | 2 +-
fs/btrfs/disk-io.c | 2 +-
fs/btrfs/extent_map.c | 2 +-
fs/btrfs/space-info.c | 4 ++--
fs/btrfs/zoned.c | 2 +-
fs/ceph/super.c | 2 +-
fs/coredump.c | 2 +-
fs/dlm/lowcomms.c | 2 +-
fs/dlm/main.c | 2 +-
fs/ext4/mballoc.c | 2 +-
fs/fs-writeback.c | 4 ++--
fs/fuse/dev.c | 2 +-
fs/fuse/inode.c | 2 +-
fs/gfs2/main.c | 5 +++--
fs/gfs2/ops_fstype.c | 6 ++++--
fs/netfs/misc.c | 2 +-
fs/netfs/objects.c | 2 +-
fs/nfs/namespace.c | 2 +-
fs/nfs/nfs4renewd.c | 2 +-
fs/nfsd/filecache.c | 2 +-
fs/notify/mark.c | 4 ++--
fs/ocfs2/dlm/dlmdomain.c | 3 ++-
fs/ocfs2/dlmfs/dlmfs.c | 3 ++-
fs/quota/dquot.c | 2 +-
fs/smb/client/cifsfs.c | 16 +++++++++++-----
fs/smb/server/ksmbd_work.c | 2 +-
fs/smb/server/transport_rdma.c | 3 ++-
fs/super.c | 3 ++-
fs/verity/verify.c | 2 +-
fs/xfs/xfs_log.c | 3 +--
fs/xfs/xfs_mru_cache.c | 3 ++-
fs/xfs/xfs_super.c | 15 ++++++++-------
40 files changed, 79 insertions(+), 65 deletions(-)
Powered by blists - more mailing lists