• Linus Torvalds's avatar
    Merge tag 'vfs/v6.4-rc3/misc.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs · 9db89859
    Linus Torvalds authored
    Pull vfs fixes from Christian Brauner:
    
     - During the acl rework we merged this cycle the generic_listxattr()
       helper had to be modified in a way that in principle it would allow
       for POSIX ACLs to be reported. At least that was the impression we
       had initially. Because before the acl rework POSIX ACLs would be
       reported if the filesystem did have POSIX ACL xattr handlers in
       sb->s_xattr. That logic changed and now we can simply check whether
       the superblock has SB_POSIXACL set and if the inode has
       inode->i_{default_}acl set report the appropriate POSIX ACL name.
    
       However, we didn't realize that generic_listxattr() was only ever
       used by two filesystems. Both of them don't support POSIX ACLs via
       sb->s_xattr handlers and so never reported POSIX ACLs via
       generic_listxattr() even if they raised SB_POSIXACL and did contain
       inodes which had acls set. The example here is nfs4.
    
       As a result, generic_listxattr() suddenly started reporting POSIX
       ACLs when it wouldn't have before. Since SB_POSIXACL implies that the
       umask isn't stripped in the VFS nfs4 can't just drop SB_POSIXACL from
       the superblock as it would also alter umask handling for them.
    
       So just have generic_listxattr() not report POSIX ACLs as it never
       did anyway. It's documented as such.
    
     - Our SB_* flags currently use a signed integer and we shift the last
       bit causing UBSAN to complain about undefined behavior. Switch to
       using unsigned. While the original patch used an explicit unsigned
       bitshift it's now pretty common to rely on the BIT() macro in a lot
       of headers nowadays. So the patch has been adjusted to use that.
    
     - Add Namjae as ntfs reviewer. They're already active this cycle so
       let's make it explicit right now.
    
    * tag 'vfs/v6.4-rc3/misc.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs:
      ntfs: Add myself as a reviewer
      fs: don't call posix_acl_listxattr in generic_listxattr
      fs: fix undefined behavior in bit shift for SB_NOUSER
    9db89859
MAINTAINERS 693 KB