]> www.infradead.org Git - users/hch/xfsprogs.git/commitdiff
xfs: hoist project id get/set functions to libxfs
authorDarrick J. Wong <djwong@kernel.org>
Tue, 9 Jan 2024 17:39:34 +0000 (09:39 -0800)
committerDarrick J. Wong <djwong@kernel.org>
Wed, 10 Apr 2024 00:21:33 +0000 (17:21 -0700)
Move the project id get and set functions into libxfs.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
libxfs/libxfs_api_defs.h
libxfs/xfs_inode_util.c
libxfs/xfs_inode_util.h

index 5d8c4de03b26b5af0beb346304563cce258fde02..d75bc23cc4c2a91665fe344ca8a8948950367c03 100644 (file)
 #define xfs_free_extent_later          libxfs_free_extent_later
 #define xfs_free_perag                 libxfs_free_perag
 #define xfs_fs_geometry                        libxfs_fs_geometry
+#define xfs_get_projid                 libxfs_get_projid
 #define xfs_highbit32                  libxfs_highbit32
 #define xfs_highbit64                  libxfs_highbit64
 #define xfs_ialloc_calc_rootino                libxfs_ialloc_calc_rootino
 #define xfs_sb_read_secondary          libxfs_sb_read_secondary
 #define xfs_sb_to_disk                 libxfs_sb_to_disk
 #define xfs_sb_version_to_features     libxfs_sb_version_to_features
+#define xfs_set_projid                 libxfs_set_projid
 #define xfs_symlink_blocks             libxfs_symlink_blocks
 #define xfs_symlink_hdr_ok             libxfs_symlink_hdr_ok
 #define xfs_symlink_write_target       libxfs_symlink_write_target
index 868a77cafa67690667f4a4c4fc427d7c97435426..89fb58807a11de016e5bd28882c5aa62115b006c 100644 (file)
@@ -122,3 +122,14 @@ xfs_ip2xflags(
                flags |= FS_XFLAG_HASATTR;
        return flags;
 }
+
+#define XFS_PROJID_DEFAULT     0
+
+prid_t
+xfs_get_initial_prid(struct xfs_inode *dp)
+{
+       if (dp->i_diflags & XFS_DIFLAG_PROJINHERIT)
+               return dp->i_projid;
+
+       return XFS_PROJID_DEFAULT;
+}
index 6ad1898a0f73ffc619187d7443772fcea56baa73..f7e4d5a8235dda8562621db20faf27248a6fe70f 100644 (file)
@@ -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__ */