[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <YG4GjNEqC6Pmhmod@miu.piliscsaba.redhat.com>
Date: Wed, 7 Apr 2021 21:22:52 +0200
From: Miklos Szeredi <miklos@...redi.hu>
To: Al Viro <viro@...iv.linux.org.uk>
Cc: linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org
Subject: [GIT PULL] fileattr API
Hi Al,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git fileattr_v4
Convert all (with the exception of CIFS) filesystems from handling
FS_IOC_[GS]ETFLAGS and FS_IOC_FS[GS]ETXATTR themselves to new i_ops and
common code moved into the VFS for these ioctls. This removes boilerplate
from filesystems, and allows these operations to be properly stacked in
overlayfs.
Thanks,
Miklos
---
Changes since v3:
- converted fuse
- removed overlayfs ioctl code
- moved d_is_special() check to callbacks where necessary
- user copy cosmetics
Changes since v2:
- renaming, most notably miscattr -> fileattr
- use memset instead of structure initialization
- drop gratuitous use of file_dentry()
- kerneldoc, comments, spelling improvements
- xfs: enable getting/setting FS_PROJINHERIT_FL and other tweaks
- btrfs: patch logistics
Changes since v1:
- rebased on 5.12-rc1 (mnt_userns churn)
- fixed LSM hook on overlayfs
----------------------------------------------------------------
Miklos Szeredi (23):
vfs: add fileattr ops
ecryptfs: stack fileattr ops
ovl: stack fileattr ops
btrfs: convert to fileattr
ext2: convert to fileattr
ext4: convert to fileattr
f2fs: convert to fileattr
gfs2: convert to fileattr
orangefs: convert to fileattr
xfs: convert to fileattr
efivars: convert to fileattr
hfsplus: convert to fileattr
jfs: convert to fileattr
nilfs2: convert to fileattr
ocfs2: convert to fileattr
reiserfs: convert to fileattr
ubifs: convert to fileattr
vfs: remove unused ioctl helpers
fuse: move ioctl to separate source file
fuse: unsigned open flags
fuse: add internal open/release helpers
fuse: convert to fileattr
ovl: remove unneeded ioctls
---
Documentation/filesystems/locking.rst | 5 +
Documentation/filesystems/vfs.rst | 15 ++
fs/btrfs/ctree.h | 3 +
fs/btrfs/inode.c | 4 +
fs/btrfs/ioctl.c | 226 +++-------------
fs/ecryptfs/inode.c | 22 ++
fs/efivarfs/file.c | 77 ------
fs/efivarfs/inode.c | 44 +++
fs/ext2/ext2.h | 7 +-
fs/ext2/file.c | 2 +
fs/ext2/ioctl.c | 88 +++---
fs/ext2/namei.c | 2 +
fs/ext4/ext4.h | 12 +-
fs/ext4/file.c | 2 +
fs/ext4/ioctl.c | 208 +++------------
fs/ext4/namei.c | 2 +
fs/f2fs/f2fs.h | 3 +
fs/f2fs/file.c | 216 +++------------
fs/f2fs/namei.c | 2 +
fs/fuse/Makefile | 2 +-
fs/fuse/dir.c | 6 +-
fs/fuse/file.c | 435 +++---------------------------
fs/fuse/fuse_i.h | 40 ++-
fs/fuse/ioctl.c | 490 ++++++++++++++++++++++++++++++++++
fs/gfs2/file.c | 63 ++---
fs/gfs2/inode.c | 4 +
fs/gfs2/inode.h | 3 +
fs/hfsplus/dir.c | 2 +
fs/hfsplus/hfsplus_fs.h | 14 +-
fs/hfsplus/inode.c | 54 ++++
fs/hfsplus/ioctl.c | 84 ------
fs/inode.c | 87 ------
fs/ioctl.c | 325 ++++++++++++++++++++++
fs/jfs/file.c | 6 +-
fs/jfs/ioctl.c | 111 +++-----
fs/jfs/jfs_dinode.h | 7 -
fs/jfs/jfs_inode.h | 4 +-
fs/jfs/namei.c | 6 +-
fs/nilfs2/file.c | 2 +
fs/nilfs2/ioctl.c | 61 ++---
fs/nilfs2/namei.c | 2 +
fs/nilfs2/nilfs.h | 3 +
fs/ocfs2/file.c | 2 +
fs/ocfs2/ioctl.c | 59 ++--
fs/ocfs2/ioctl.h | 3 +
fs/ocfs2/namei.c | 3 +
fs/ocfs2/ocfs2_ioctl.h | 8 -
fs/orangefs/file.c | 79 ------
fs/orangefs/inode.c | 50 ++++
fs/overlayfs/dir.c | 2 +
fs/overlayfs/file.c | 110 --------
fs/overlayfs/inode.c | 77 ++++++
fs/overlayfs/overlayfs.h | 5 +-
fs/overlayfs/readdir.c | 4 -
fs/reiserfs/file.c | 2 +
fs/reiserfs/ioctl.c | 121 ++++-----
fs/reiserfs/namei.c | 2 +
fs/reiserfs/reiserfs.h | 7 +-
fs/reiserfs/super.c | 2 +-
fs/ubifs/dir.c | 2 +
fs/ubifs/file.c | 2 +
fs/ubifs/ioctl.c | 78 +++---
fs/ubifs/ubifs.h | 3 +
fs/xfs/libxfs/xfs_fs.h | 4 -
fs/xfs/xfs_ioctl.c | 258 +++++-------------
fs/xfs/xfs_ioctl.h | 11 +
fs/xfs/xfs_ioctl32.c | 2 -
fs/xfs/xfs_ioctl32.h | 2 -
fs/xfs/xfs_iops.c | 7 +
include/linux/fileattr.h | 59 ++++
include/linux/fs.h | 16 +-
71 files changed, 1724 insertions(+), 2007 deletions(-)
create mode 100644 fs/fuse/ioctl.c
create mode 100644 include/linux/fileattr.h
Powered by blists - more mailing lists