On Mon, Jan 30, 2023 at 10:10:52AM +0100, Christian Brauner wrote: > However, a few filesystems still rely on the ->list() method of the > generix POSIX ACL xattr handlers in their ->listxattr() inode operation. > This is a very limited set of filesystems. For most of them there is no > dependence on the generic POSIX ACL xattr handler in any way. > > In addition, during inode initalization in inode_init_always() the > registered xattr handlers in sb->s_xattr are used to raise IOP_XATTR in > inode->i_opflags. > > With the incoming removal of the legacy POSIX ACL handlers it is at > least possible for a filesystem to only implement POSIX ACLs but no > other xattrs. If that were to happen we would miss to raise IOP_XATTR > because sb->s_xattr would be NULL. While there currently is no such > filesystem we should still make sure that this just works should it ever > happen in the future. Now the real questions is: do we care? Once Posix ACLs use an entirely separate path, nothing should rely on IOP_XATTR for them. So instead I think we're better off auditing all users of IOP_XATTR and making sure that nothing relies on them for ACLs, as we've very much split the VFS concept of ACLs from that from xattrs otherwise.