Hi Linus, Please pull this branch containing bug fixes for XFS for 5.18. The biggest change this cycle is bringing XFS' inode attribute setting code back towards alignment with what the VFS does. IOWs, setgid bit handling should be a closer match with ext4 and btrfs behavior. The rest of the branch is bug fixes around the filesystem -- patching gaps in quota enforcement, removing bogus selinux audit messages, and fixing log corruption and problems with log recovery. There will be a second pull request later on in the merge window with more bug fixes. Dave Chinner will be taking over as XFS maintainer for one release cycle, starting from the day 5.18-rc1 drops until 5.19-rc1 is tagged so that I can focus on starting a massive design review for the (feature complete after five years) online repair feature. As usual, I did a test-merge with upstream master as of a few minutes ago, and didn't see any conflicts. Please let me know if you encounter any problems. --D The following changes since commit 7e57714cd0ad2d5bb90e50b5096a0e671dec1ef3: Linux 5.17-rc6 (2022-02-27 14:36:33 -0800) are available in the Git repository at: git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git tags/xfs-5.18-merge-2 for you to fetch changes up to 01728b44ef1b714756607be0210fbcf60c78efce: xfs: xfs_is_shutdown vs xlog_is_shutdown cage fight (2022-03-20 08:59:50 -0700) ---------------------------------------------------------------- New code for 5.18: - Fix some incorrect mapping state being passed to iomap during COW - Don't create bogus selinux audit messages when deciding to degrade gracefully due to lack of privilege - Fix setattr implementation to use VFS helpers so that we drop setgid consistently with the other filesystems - Fix link/unlink/rename to check quota limits - Constify xfs_name_dotdot to prevent abuse of in-kernel symbols - Fix log livelock between the AIL and inodegc threads during recovery - Fix a log stall when the AIL races with pushers - Fix stalls in CIL flushes due to pinned inode cluster buffers during recovery - Fix log corruption due to incorrect usage of xfs_is_shutdown vs xlog_is_shutdown because during an induced fs shutdown, AIL writeback must continue until the log is shut down, even if the filesystem has already shut down ---------------------------------------------------------------- Darrick J. Wong (7): xfs: don't generate selinux audit messages for capability testing xfs: use setattr_copy to set vfs inode attributes xfs: refactor user/group quota chown in xfs_setattr_nonsize xfs: reserve quota for dir expansion when linking/unlinking files xfs: reserve quota for target dir expansion when renaming files xfs: constify the name argument to various directory functions xfs: constify xfs_name_dotdot Dave Chinner (7): xfs: log worker needs to start before intent/unlink recovery xfs: check buffer pin state after locking in delwri_submit xfs: xfs_ail_push_all_sync() stalls when racing with updates xfs: async CIL flushes need pending pushes to be made stable xfs: log items should have a xlog pointer, not a mount xfs: AIL should be log centric xfs: xfs_is_shutdown vs xlog_is_shutdown cage fight Gao Xiang (1): xfs: add missing cmap->br_state = XFS_EXT_NORM update fs/xfs/libxfs/xfs_dir2.c | 36 +++++++------ fs/xfs/libxfs/xfs_dir2.h | 8 +-- fs/xfs/libxfs/xfs_dir2_priv.h | 5 +- fs/xfs/xfs_bmap_item.c | 2 +- fs/xfs/xfs_buf.c | 45 ++++++++++++---- fs/xfs/xfs_buf_item.c | 5 +- fs/xfs/xfs_extfree_item.c | 2 +- fs/xfs/xfs_fsmap.c | 4 +- fs/xfs/xfs_icache.c | 10 +++- fs/xfs/xfs_inode.c | 100 ++++++++++++++++++++++------------- fs/xfs/xfs_inode.h | 2 +- fs/xfs/xfs_inode_item.c | 12 +++++ fs/xfs/xfs_ioctl.c | 2 +- fs/xfs/xfs_iops.c | 118 +++++++++--------------------------------- fs/xfs/xfs_log.c | 5 +- fs/xfs/xfs_log_cil.c | 24 +++++++-- fs/xfs/xfs_pnfs.c | 3 +- fs/xfs/xfs_qm.c | 8 +-- fs/xfs/xfs_refcount_item.c | 2 +- fs/xfs/xfs_reflink.c | 5 +- fs/xfs/xfs_rmap_item.c | 2 +- fs/xfs/xfs_trace.h | 8 +-- fs/xfs/xfs_trans.c | 90 +++++++++++++++++++++++++++++++- fs/xfs/xfs_trans.h | 6 ++- fs/xfs/xfs_trans_ail.c | 47 ++++++++++------- fs/xfs/xfs_trans_priv.h | 3 +- kernel/capability.c | 1 + 27 files changed, 344 insertions(+), 211 deletions(-)