> From: Tarun Khandelwal <[email protected]> > > fuse_fill_super_common() always sets SB_POSIXACL on the superblock, but > fuse_fill_super_submount() never does. Submount superblocks are created > from an fs_context with no sb_flags, so the superblock of an automounted > FUSE_ATTR_SUBMOUNT directory (e.g. a virtiofs export containing another > host mount) lacks SB_POSIXACL, even though it shares the fuse_conn, and > thus fc->posix_acl, with its parent. > > Since IS_POSIXACL() is false on such a submount, the VFS: > > - fails setting POSIX ACLs with -EOPNOTSUPP and hides existing ACLs, > without sending any request to the server; > - applies the umask itself on create, so default ACLs on the server are > not honoured for new files; > [ ... ] > reported by getfacl on the submount, and default ACLs and ACL-based > access checks behave the same as on the root mount. Tested on v7.3-rc5 > in a QEMU guest. > > Signed-off-by: Tarun Khandelwal <[email protected]>
Sashiko has reviewed this patch and found no issues. It looks great! -- Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=1
