> +EXPORT_SYMBOL(vfs_set_acl); I think all this stackable file system infrastucture should be EXPORT_SYMBOL_GPL, like a lot of the other internal stuff. > +int xattr_permission(struct user_namespace *mnt_userns, struct inode *inode, > + const char *name, int mask) Hmm. The only think ACLs actually need from xattr_permission are the immutable / append check and the HAS_UNMAPPED_ID one. I'd rather open code that, or if you cane come up with a sane name do a smaller helper rather than doing all the strcmp on the prefixes for now good reason. > +static inline int vfs_set_acl(struct user_namespace *mnt_userns, > + struct dentry *dentry, const char *name, > + struct posix_acl *acl) > +{ > + return 0; Should this really return 0 if ACLs are not supported?