[GIT PULL] xfs: fixes for 5.17-rc3
From: Darrick J. Wong
Date: Fri Feb 04 2022 - 21:56:11 EST
Hi Linus,
Please pull this branch containing bug fixes for XFS for 5.17-rc3.
I was auditing operations in XFS that clear file privileges, and
realized that XFS' fallocate implementation drops suid/sgid but doesn't
clear file capabilities the same way that file writes and reflink do.
There are VFS helpers that do it correctly, so refactor XFS to use them.
I also noticed that we weren't flushing the log at the correct point in
the fallocate operation, so that's fixed too.
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 e783362eb54cd99b2cac8b3a9aeac942e6f6ac07:
Linux 5.17-rc1 (2022-01-23 10:12:53 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git tags/xfs-5.17-fixes-1
for you to fetch changes up to cea267c235e1b1ec3bfc415f6bd420289bcb3bc9:
xfs: ensure log flush at the end of a synchronous fallocate call (2022-02-01 14:14:48 -0800)
----------------------------------------------------------------
Fixes for 5.17-rc3:
- Fix fallocate so that it drops all file privileges when files are
modified instead of open-coding that incompletely.
- Fix fallocate to flush the log if the caller wanted synchronous file
updates.
----------------------------------------------------------------
Darrick J. Wong (1):
xfs: reject crazy array sizes being fed to XFS_IOC_GETBMAP*
Dave Chinner (5):
xfs: remove XFS_PREALLOC_SYNC
xfs: fallocate() should call file_modified()
xfs: set prealloc flag in xfs_alloc_file_space()
xfs: move xfs_update_prealloc_flags() to xfs_pnfs.c
xfs: ensure log flush at the end of a synchronous fallocate call
fs/xfs/xfs_bmap_util.c | 9 ++----
fs/xfs/xfs_file.c | 86 +++++++++++++++-----------------------------------
fs/xfs/xfs_inode.h | 9 ------
fs/xfs/xfs_ioctl.c | 2 +-
fs/xfs/xfs_pnfs.c | 42 ++++++++++++++++++++++--
5 files changed, 69 insertions(+), 79 deletions(-)