Re: [PATCH] xattr: Fix error results for non-existent / invisibleattributes

From: Andreas Gruenbacher
Date: Mon Jun 20 2011 - 21:38:49 EST

On Mon, 2011-06-20 at 04:09 -0400, Christoph Hellwig wrote:
> On Fri, May 27, 2011 at 02:50:36PM +0200, Andreas Gruenbacher wrote:
> > Return -ENODATA when trying to read a user.* attribute which cannot
> > exist: user space otherwise does not have a reasonable way to
> > distinguish between non-existent and inaccessible attributes.
> >
> > Likewise, return -ENODATA when an unprivileged process tries to read a
> > trusted.* attribute: to unprivileged processes, those attributes are
> > invisible (listxattr() won't include them).
> This breaks xfstests 062.

The test does a "getfattr -n <name> <file>" for an attribute which
cannot exist. The kernel now returns ENODATA instead of the previous

One way to fix this in xfstests is to use listxattr(2) instead of
getxattr(2), e.g.,

- getfattr -m $nsp -n $nsp.name2 $SCRATCH_MNT/$inode
+ getfattr -m $nsp.name2 $SCRATCH_MNT/$inode

Another is to accept ENODATA as well as EPERM. Not sure which is preferable.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at