aboutsummaryrefslogtreecommitdiffstats
path: root/fs/jbd2/commit.c
diff options
context:
space:
mode:
authorStefan Berger <[email protected]>2024-11-01 19:37:03 +0000
committerAl Viro <[email protected]>2024-11-13 16:46:29 +0000
commit95f567f81e43a1bcb5fbf0559e55b7505707300d (patch)
tree5ca9fe605751a90b382f761c197edc3b9dd787e2 /fs/jbd2/commit.c
parentfs/stat.c: switch to CLASS(fd_raw) (diff)
downloadkernel-95f567f81e43a1bcb5fbf0559e55b7505707300d.tar.gz
kernel-95f567f81e43a1bcb5fbf0559e55b7505707300d.zip
fs: Simplify getattr interface function checking AT_GETATTR_NOSEC flag
Commit 8a924db2d7b5 ("fs: Pass AT_GETATTR_NOSEC flag to getattr interface function")' introduced the AT_GETATTR_NOSEC flag to ensure that the call paths only call vfs_getattr_nosec if it is set instead of vfs_getattr. Now, simplify the getattr interface functions of filesystems where the flag AT_GETATTR_NOSEC is checked. There is only a single caller of inode_operations getattr function and it is located in fs/stat.c in vfs_getattr_nosec. The caller there is the only one from which the AT_GETATTR_NOSEC flag is passed from. Two filesystems are checking this flag in .getattr and the flag is always passed to them unconditionally from only vfs_getattr_nosec: - ecryptfs: Simplify by always calling vfs_getattr_nosec in ecryptfs_getattr. From there the flag is passed to no other function and this function is not called otherwise. - overlayfs: Simplify by always calling vfs_getattr_nosec in ovl_getattr. From there the flag is passed to no other function and this function is not called otherwise. The query_flags in vfs_getattr_nosec will mask-out AT_GETATTR_NOSEC from any caller using AT_STATX_SYNC_TYPE as mask so that the flag is not important inside this function. Also, since no filesystem is checking the flag anymore, remove the flag entirely now, including the BUG_ON check that never triggered. The net change of the changes here combined with the original commit is that ecryptfs and overlayfs do not call vfs_getattr but only vfs_getattr_nosec. Fixes: 8a924db2d7b5 ("fs: Pass AT_GETATTR_NOSEC flag to getattr interface function") Reported-by: Al Viro <[email protected]> Closes: https://lore.kernel.org/linux-fsdevel/20241101011724.GN1350452@ZenIV/T/#u Cc: Tyler Hicks <[email protected]> Cc: [email protected] Cc: Miklos Szeredi <[email protected]> Cc: Amir Goldstein <[email protected]> Cc: [email protected] Cc: Christian Brauner <[email protected]> Cc: [email protected] Reviewed-by: Christian Brauner <[email protected]> Signed-off-by: Stefan Berger <[email protected]> Signed-off-by: Al Viro <[email protected]>
Diffstat (limited to 'fs/jbd2/commit.c')
0 files changed, 0 insertions, 0 deletions