[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250425-vfs-fixes-dc6a1661a28f@brauner>
Date: Fri, 25 Apr 2025 23:22:54 +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] vfs fixes
Hey Linus,
/* Summary */
This contains various fixes for this cycle:
- For some reason we went from zero to three maintainers for HFS/HFS+ in
a matter of days. The lesson to learn from this might just be that we
need to threaten code removal more often!?
- Fix a regression introduced by enabling large folios for lage logical
block sizes. This has caused issues for noref migration with large
folios due to sleeping while in an atomic context.
New sleeping variants of pagecache lookup helpers are introduced.
These helpers take the folio lock instead of the mapping's private
spinlock. The problematic users are converted to the sleeping variants
and serialize against noref migration. Atomic users will bail on
seeing the new BH_Migrate flag.
This also shrinks the critical region of the mapping's private lock
and the new blocking callers reduce contention on the spinlock for
bdev mappings.
- Fix two bugs in do_move_mount() when with MOVE_MOUNT_BENEATH.
The first bug is using a mountpoint that is located on a mount we're
not holding a reference to. The second bug is putting the mountpoint
after we've called namespace_unlock() as it's no longer guaranteed
that it does stay a mountpoint.
- Remove a pointless call to vfs_getattr_nosec() in the devtmpfs code
just to query i_mode instead of simply querying the inode directly.
This also avoids lifetime issues for the dm code by an earlier bugfix
this cycle that moved bdev_statx() handling into vfs_getattr_nosec().
- Fix AT_FDCWD handling with getname_maybe_null() in the xattr code.
- Fix a performance regression for files when multiple callers issue a
close when it's not the last reference.
- Remove a duplicate noinline annotation from pipe_clear_nowait().
/* Testing */
gcc (Debian 14.2.0-19) 14.2.0
Debian clang version 19.1.7 (3)
No build failures or warnings were observed.
/* Conflicts */
Merge conflicts with mainline
=============================
No known conflicts.
Merge conflicts with other trees
================================
No known conflicts.
The following changes since commit a33b5a08cbbdd7aadff95f40cbb45ab86841679e:
Merge tag 'sched_ext-for-6.15-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext (2025-04-21 19:16:29 -0700)
are available in the Git repository at:
git@...olite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.15-rc4.fixes
for you to fetch changes up to f520bed25d17bb31c2d2d72b0a785b593a4e3179:
fs/xattr: Fix handling of AT_FDCWD in setxattrat(2) and getxattrat(2) (2025-04-25 12:11:56 +0200)
Please consider pulling these changes from the signed vfs-6.15-rc4.fixes tag.
Thanks!
Christian
----------------------------------------------------------------
vfs-6.15-rc4.fixes
----------------------------------------------------------------
Al Viro (1):
fix a couple of races in MNT_TREE_BENEATH handling by do_move_mount()
Christian Brauner (1):
Merge patch series "fs/buffer: split pagecache lookups into atomic or blocking"
Christoph Hellwig (1):
devtmpfs: don't use vfs_getattr_nosec to query i_mode
Davidlohr Bueso (7):
fs/buffer: split locking for pagecache lookups
fs/buffer: introduce sleeping flavors for pagecache lookups
fs/buffer: use sleeping version of __find_get_block()
fs/ocfs2: use sleeping version of __find_get_block()
fs/jbd2: use sleeping version of __find_get_block()
fs/ext4: use sleeping version of sb_find_get_block()
mm/migrate: fix sleep in atomic for large folios and buffer heads
Jan Kara (1):
fs/xattr: Fix handling of AT_FDCWD in setxattrat(2) and getxattrat(2)
Mateusz Guzik (1):
fs: fall back to file_ref_put() for non-last reference
T.J. Mercier (1):
splice: remove duplicate noinline from pipe_clear_nowait
Viacheslav Dubeyko (1):
MAINTAINERS: add HFS/HFS+ maintainers
Yangtao Li (1):
MAINTAINERS: hfs/hfsplus: add myself as maintainer
MAINTAINERS | 10 +++++--
drivers/base/devtmpfs.c | 22 ++++++--------
fs/buffer.c | 73 +++++++++++++++++++++++++++++++++------------
fs/ext4/ialloc.c | 3 +-
fs/ext4/mballoc.c | 3 +-
fs/file.c | 2 +-
fs/jbd2/revoke.c | 15 ++++++----
fs/namespace.c | 69 ++++++++++++++++++++++--------------------
fs/ocfs2/journal.c | 2 +-
fs/splice.c | 2 +-
fs/xattr.c | 4 +--
include/linux/buffer_head.h | 9 ++++++
include/linux/file_ref.h | 19 ++++--------
mm/migrate.c | 8 +++--
14 files changed, 145 insertions(+), 96 deletions(-)
Powered by blists - more mailing lists