From: Darrick J. Wong Date: Wed, 2 Oct 2024 01:09:24 +0000 (-0700) Subject: xfs: hoist project id get/set functions to libxfs X-Git-Tag: v6.11.0~71 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0687669c9afc52e22a33ea98eaed430f059557cb;p=thirdparty%2Fxfsprogs-dev.git xfs: hoist project id get/set functions to libxfs Source kernel commit: fcea5b35f36233c04003ab8b3eb081b5e20e1aa4 Move the project id get and set functions into libxfs. Signed-off-by: Darrick J. Wong Reviewed-by: Christoph Hellwig --- diff --git a/libxfs/xfs_inode_util.c b/libxfs/xfs_inode_util.c index 868a77ca..0a9ea03e 100644 --- a/libxfs/xfs_inode_util.c +++ b/libxfs/xfs_inode_util.c @@ -122,3 +122,13 @@ xfs_ip2xflags( flags |= FS_XFLAG_HASATTR; return flags; } + +prid_t +xfs_get_initial_prid(struct xfs_inode *dp) +{ + if (dp->i_diflags & XFS_DIFLAG_PROJINHERIT) + return dp->i_projid; + + /* Assign to the root project by default. */ + return 0; +} diff --git a/libxfs/xfs_inode_util.h b/libxfs/xfs_inode_util.h index 6ad1898a..f7e4d5a8 100644 --- a/libxfs/xfs_inode_util.h +++ b/libxfs/xfs_inode_util.h @@ -11,4 +11,6 @@ uint64_t xfs_flags2diflags2(struct xfs_inode *ip, unsigned int xflags); uint32_t xfs_dic2xflags(struct xfs_inode *ip); uint32_t xfs_ip2xflags(struct xfs_inode *ip); +prid_t xfs_get_initial_prid(struct xfs_inode *dp); + #endif /* __XFS_INODE_UTIL_H__ */