Source kernel commit: ba8adad5d036733d240fa8a8f4d055f3d4490562 Remove the XFS wrappers for converting from and to the kuid/kgid types. Mostly this means switching to VFS i_{u,g}id_{read,write} helpers, but in a few spots the calls to the conversion functions is open coded. To match the use of sb->s_user_ns in the helpers and other file systems, sb->s_user_ns is also used in the quota code. The ACL code already does the conversion in a grotty layering violation in the VFS xattr code, so it keeps using init_user_ns for the identity mapping. Signed-off-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> Signed-off-by: Christoph Hellwig <hch@xxxxxx> --- include/xfs_inode.h | 8 ++++---- libxfs/xfs_inode_buf.c | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/include/xfs_inode.h b/include/xfs_inode.h index 99b0c3aa..b9cdd8ca 100644 --- a/include/xfs_inode.h +++ b/include/xfs_inode.h @@ -45,11 +45,11 @@ struct inode { struct timespec i_ctime; }; -#define xfs_uid_to_kuid(uid) (uid) -#define xfs_kuid_to_uid(uid) (uid) +#define i_uid_write(inode, uid) (inode)->i_uid = (uid) +#define i_uid_read(inode) ((inode)->i_uid) -#define xfs_gid_to_kgid(gid) (gid) -#define xfs_kgid_to_gid(gid) (gid) +#define i_gid_write(inode, gid) (inode)->i_gid = (gid) +#define i_gid_read(inode) ((inode)->i_gid) typedef struct xfs_inode { struct cache_node i_node; diff --git a/libxfs/xfs_inode_buf.c b/libxfs/xfs_inode_buf.c index 9d47208e..64651d4e 100644 --- a/libxfs/xfs_inode_buf.c +++ b/libxfs/xfs_inode_buf.c @@ -219,8 +219,8 @@ xfs_inode_from_disk( } to->di_format = from->di_format; - inode->i_uid = xfs_uid_to_kuid(be32_to_cpu(from->di_uid)); - inode->i_gid = xfs_gid_to_kgid(be32_to_cpu(from->di_gid)); + i_uid_write(inode, be32_to_cpu(from->di_uid)); + i_gid_write(inode, be32_to_cpu(from->di_gid)); to->di_flushiter = be16_to_cpu(from->di_flushiter); /* @@ -273,8 +273,8 @@ xfs_inode_to_disk( to->di_version = from->di_version; to->di_format = from->di_format; - to->di_uid = cpu_to_be32(xfs_kuid_to_uid(inode->i_uid)); - to->di_gid = cpu_to_be32(xfs_kgid_to_gid(inode->i_gid)); + to->di_uid = cpu_to_be32(i_uid_read(inode)); + to->di_gid = cpu_to_be32(i_gid_read(inode)); to->di_projid_lo = cpu_to_be16(from->di_projid & 0xffff); to->di_projid_hi = cpu_to_be16(from->di_projid >> 16); -- 2.26.2