On Wed, 2025-07-02 at 14:17 +0200, Christian Brauner wrote: > I'm folding: > > diff --git a/fs/kernfs/inode.c b/fs/kernfs/inode.c > index 3c293a5a21b1..457f91c412d4 100644 > --- a/fs/kernfs/inode.c > +++ b/fs/kernfs/inode.c > @@ -142,9 +142,9 @@ ssize_t kernfs_iop_listxattr(struct dentry *dentry, char *buf, size_t size) > struct kernfs_node *kn = kernfs_dentry_node(dentry); > struct kernfs_iattrs *attrs; > > - attrs = kernfs_iattrs_noalloc(kn); > + attrs = kernfs_iattrs(kn); > if (!attrs) > - return -ENODATA; > + return -ENOMEM; > > return simple_xattr_list(d_inode(dentry), &attrs->xattrs, buf, size); > } > > which brings it back to the old behavior. Yes, that makes sense and works for me too. Thanks Christian!