[GIT PULL] vfs fixes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxxxxxxxxx: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(-)




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux