xfs: clean up the attr flag confusion
The ATTR_* flags have a long IRIX history, where they a userspace interface, the on-disk format and an internal interface. We've split out the on-disk interface to the XFS_ATTR_* values, but despite (or because?) of that the flag have still been a mess. Switch the internal interface to pass the on-disk XFS_ATTR_* flags for the namespace and the Linux XATTR_* flags for the actual flags instead. The ATTR_* values that are actually used are move to xfs_fs.h with a new XFS_IOC_* prefix to not conflict with the userspace version that has the same name and must have the same value. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Chandan Rajendra <chandanrlinux@gmail.com> Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
This commit is contained in:

committed by
Darrick J. Wong

parent
f3e93d95fe
commit
d5f0f49a9b
@@ -131,7 +131,7 @@ xfs_get_acl(struct inode *inode, int type)
|
||||
struct posix_acl *acl = NULL;
|
||||
struct xfs_da_args args = {
|
||||
.dp = ip,
|
||||
.flags = ATTR_ROOT,
|
||||
.attr_filter = XFS_ATTR_ROOT,
|
||||
.valuelen = XFS_ACL_MAX_SIZE(mp),
|
||||
};
|
||||
int error;
|
||||
@@ -172,7 +172,7 @@ __xfs_set_acl(struct inode *inode, struct posix_acl *acl, int type)
|
||||
struct xfs_inode *ip = XFS_I(inode);
|
||||
struct xfs_da_args args = {
|
||||
.dp = ip,
|
||||
.flags = ATTR_ROOT,
|
||||
.attr_filter = XFS_ATTR_ROOT,
|
||||
};
|
||||
int error;
|
||||
|
||||
|
Reference in New Issue
Block a user