* [GIT PULL] overlayfs update for 5.15
@ 2021-09-02 13:51 Miklos Szeredi
2021-09-02 16:35 ` Linus Torvalds
2021-09-02 17:37 ` pr-tracker-bot
0 siblings, 2 replies; 3+ messages in thread
From: Miklos Szeredi @ 2021-09-02 13:51 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, linux-fsdevel, linux-unionfs
Hi Linus,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git tags/ovl-update-5.15
- Copy up immutable/append/sync/noatime attributes (Amir Goldstein)
- Improve performance by enabling RCU lookup.
- Misc fixes and improvements
The reason this touches so many files is that the ->get_acl() method now
gets a "bool rcu" argument. The ->get_acl() API was updated based on
comments from Al and Linus:
https://lore.kernel.org/linux-fsdevel/CAJfpeguQxpd6Wgc0Jd3ks77zcsAv_bn0q17L3VNnnmPKu11t8A@mail.gmail.com/
Thanks,
Miklos
---
Amir Goldstein (5):
fs: add generic helper for filling statx attribute flags
ovl: pass ovl_fs to ovl_check_setxattr()
ovl: copy up sync/noatime fileattr flags
ovl: consistent behavior for immutable/append-only inodes
ovl: relax lookup error on mismatch origin ftype
Chengguang Xu (2):
ovl: skip checking lower file's i_writecount on truncate
ovl: update ctime when changing fileattr
Miklos Szeredi (3):
ovl: use kvalloc in xattr copy-up
vfs: add rcu argument to ->get_acl() callback
ovl: enable RCU'd ->get_acl()
Vyacheslav Yurkov (3):
ovl: disable decoding null uuid with redirect_dir
ovl: add ovl_allow_offline_changes() helper
ovl: do not set overlay.opaque for new directories
chenying (1):
ovl: fix BUG_ON() in may_delete() when called from ovl_cleanup()
---
Documentation/filesystems/locking.rst | 2 +-
Documentation/filesystems/overlayfs.rst | 3 +
Documentation/filesystems/vfs.rst | 2 +-
fs/9p/acl.c | 5 +-
fs/9p/acl.h | 2 +-
fs/bad_inode.c | 2 +-
fs/btrfs/acl.c | 5 +-
fs/btrfs/ctree.h | 2 +-
fs/ceph/acl.c | 5 +-
fs/ceph/super.h | 2 +-
fs/erofs/xattr.c | 5 +-
fs/erofs/xattr.h | 2 +-
fs/ext2/acl.c | 5 +-
fs/ext2/acl.h | 2 +-
fs/ext4/acl.c | 5 +-
fs/ext4/acl.h | 2 +-
fs/f2fs/acl.c | 5 +-
fs/f2fs/acl.h | 2 +-
fs/fuse/acl.c | 5 +-
fs/fuse/fuse_i.h | 2 +-
fs/gfs2/acl.c | 5 +-
fs/gfs2/acl.h | 2 +-
fs/jffs2/acl.c | 5 +-
fs/jffs2/acl.h | 2 +-
fs/jfs/acl.c | 5 +-
fs/jfs/jfs_acl.h | 2 +-
fs/nfs/nfs3_fs.h | 2 +-
fs/nfs/nfs3acl.c | 5 +-
fs/ocfs2/acl.c | 5 +-
fs/ocfs2/acl.h | 2 +-
fs/orangefs/acl.c | 5 +-
fs/orangefs/inode.c | 7 +--
fs/orangefs/orangefs-kernel.h | 2 +-
fs/overlayfs/copy_up.c | 83 ++++++++++++++++++++-----
fs/overlayfs/dir.c | 16 +++--
fs/overlayfs/inode.c | 105 +++++++++++++++++++++++++-------
fs/overlayfs/namei.c | 4 +-
fs/overlayfs/overlayfs.h | 44 +++++++++++--
fs/overlayfs/super.c | 4 +-
fs/overlayfs/util.c | 92 ++++++++++++++++++++++++++--
fs/posix_acl.c | 15 ++++-
fs/reiserfs/acl.h | 2 +-
fs/reiserfs/xattr_acl.c | 5 +-
fs/stat.c | 18 ++++++
fs/xfs/xfs_acl.c | 5 +-
fs/xfs/xfs_acl.h | 4 +-
include/linux/fs.h | 8 ++-
include/linux/posix_acl.h | 3 +-
include/linux/stat.h | 4 ++
49 files changed, 424 insertions(+), 102 deletions(-)
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [GIT PULL] overlayfs update for 5.15
2021-09-02 13:51 [GIT PULL] overlayfs update for 5.15 Miklos Szeredi
@ 2021-09-02 16:35 ` Linus Torvalds
2021-09-02 17:37 ` pr-tracker-bot
1 sibling, 0 replies; 3+ messages in thread
From: Linus Torvalds @ 2021-09-02 16:35 UTC (permalink / raw)
To: Miklos Szeredi, Al Viro
Cc: Linux Kernel Mailing List, linux-fsdevel, linux-unionfs
On Thu, Sep 2, 2021 at 6:51 AM Miklos Szeredi <miklos@szeredi.hu> wrote:
>
> The reason this touches so many files is that the ->get_acl() method now
> gets a "bool rcu" argument. The ->get_acl() API was updated based on
> comments from Al and Linus:
>
> https://lore.kernel.org/linux-fsdevel/CAJfpeguQxpd6Wgc0Jd3ks77zcsAv_bn0q17L3VNnnmPKu11t8A@mail.gmail.com/
That link might have been good in the individual commit message too,
but I did it in the merge commit instead.
I did notice that we now have a stale comment about ->get_acl() in fs/namei.c:
acl = get_cached_acl_rcu(inode, ACL_TYPE_ACCESS);
if (!acl)
return -EAGAIN;
/* no ->get_acl() calls in RCU mode... */
if (is_uncached_acl(acl))
return -ECHILD;
but we actually did the RCU-mode ->get_acl() call already in
get_cached_acl_rcu().
Of course, get_cached_acl_rcu() only does it for ACL_DONT_CACHE, not
for ACL_NOT_CACHED, so RCU mode is still a bit special.
At some point we probably should make get_cached_acl_rcu() do the
right thing for a successful lookup with ACL_NOT_CACHED set too, and
actually install the newly looked-up ACL. But I haven't thought much
about locking (but I think it would be ok, we use "cmpxchg" to update
the cached entry).
This is just a "maybe fixme for the future" note about that comment
and about get_cached_acl_rcu() behavior. I've pulled this, and I think
we're ok, it's just a small oddity.
Linus
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [GIT PULL] overlayfs update for 5.15
2021-09-02 13:51 [GIT PULL] overlayfs update for 5.15 Miklos Szeredi
2021-09-02 16:35 ` Linus Torvalds
@ 2021-09-02 17:37 ` pr-tracker-bot
1 sibling, 0 replies; 3+ messages in thread
From: pr-tracker-bot @ 2021-09-02 17:37 UTC (permalink / raw)
To: Miklos Szeredi; +Cc: Linus Torvalds, linux-kernel, linux-fsdevel, linux-unionfs
The pull request you sent on Thu, 2 Sep 2021 15:51:53 +0200:
> git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git tags/ovl-update-5.15
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/815409a12c0a9c0de17a910fd95fe11e1eb97f32
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2021-09-02 17:37 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-02 13:51 [GIT PULL] overlayfs update for 5.15 Miklos Szeredi
2021-09-02 16:35 ` Linus Torvalds
2021-09-02 17:37 ` pr-tracker-bot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.