xfs: create xfs_dqtype_t to represent quota types
Create a new type (xfs_dqtype_t) to represent the type of an incore dquot (user, group, project, or none). Rename the incore dquot's dq_flags field to q_type. This allows us to replace all the "uint type" arguments to the quota functions with "xfs_dqtype_t type", to make it obvious when we're passing a quota type argument into a function. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
@@ -109,7 +109,7 @@ xfs_dqblk_repair(
|
||||
struct xfs_mount *mp,
|
||||
struct xfs_dqblk *dqb,
|
||||
xfs_dqid_t id,
|
||||
uint type)
|
||||
xfs_dqtype_t type)
|
||||
{
|
||||
/*
|
||||
* Typically, a repair is only requested by quotacheck.
|
||||
|
@@ -1149,6 +1149,15 @@ static inline void xfs_dinode_put_rdev(struct xfs_dinode *dip, xfs_dev_t rdev)
|
||||
#define XFS_DQUOT_MAGIC 0x4451 /* 'DQ' */
|
||||
#define XFS_DQUOT_VERSION (uint8_t)0x01 /* latest version number */
|
||||
|
||||
#define XFS_DQTYPE_USER 0x01 /* user dquot record */
|
||||
#define XFS_DQTYPE_PROJ 0x02 /* project dquot record */
|
||||
#define XFS_DQTYPE_GROUP 0x04 /* group dquot record */
|
||||
|
||||
/* bitmask to determine if this is a user/group/project dquot */
|
||||
#define XFS_DQTYPE_REC_MASK (XFS_DQTYPE_USER | \
|
||||
XFS_DQTYPE_PROJ | \
|
||||
XFS_DQTYPE_GROUP)
|
||||
|
||||
/*
|
||||
* This is the main portion of the on-disk representation of quota information
|
||||
* for a user. We pad this with some more expansion room to construct the on
|
||||
|
@@ -18,23 +18,20 @@
|
||||
typedef uint64_t xfs_qcnt_t;
|
||||
typedef uint16_t xfs_qwarncnt_t;
|
||||
|
||||
typedef uint8_t xfs_dqtype_t;
|
||||
|
||||
#define XFS_DQTYPE_STRINGS \
|
||||
{ XFS_DQTYPE_USER, "USER" }, \
|
||||
{ XFS_DQTYPE_PROJ, "PROJ" }, \
|
||||
{ XFS_DQTYPE_GROUP, "GROUP" }
|
||||
|
||||
/*
|
||||
* flags for q_flags field in the dquot.
|
||||
*/
|
||||
#define XFS_DQTYPE_USER 0x0001 /* a user quota */
|
||||
#define XFS_DQTYPE_PROJ 0x0002 /* project quota */
|
||||
#define XFS_DQTYPE_GROUP 0x0004 /* a group quota */
|
||||
#define XFS_DQFLAG_DIRTY 0x0008 /* dquot is dirty */
|
||||
#define XFS_DQFLAG_FREEING 0x0010 /* dquot is being torn down */
|
||||
|
||||
#define XFS_DQTYPE_REC_MASK (XFS_DQTYPE_USER | \
|
||||
XFS_DQTYPE_PROJ | \
|
||||
XFS_DQTYPE_GROUP)
|
||||
#define XFS_DQFLAG_DIRTY (1 << 0) /* dquot is dirty */
|
||||
#define XFS_DQFLAG_FREEING (1 << 1) /* dquot is being torn down */
|
||||
|
||||
#define XFS_DQFLAG_STRINGS \
|
||||
{ XFS_DQTYPE_USER, "USER" }, \
|
||||
{ XFS_DQTYPE_PROJ, "PROJ" }, \
|
||||
{ XFS_DQTYPE_GROUP, "GROUP" }, \
|
||||
{ XFS_DQFLAG_DIRTY, "DIRTY" }, \
|
||||
{ XFS_DQFLAG_FREEING, "FREEING" }
|
||||
|
||||
@@ -144,6 +141,6 @@ extern xfs_failaddr_t xfs_dqblk_verify(struct xfs_mount *mp,
|
||||
struct xfs_dqblk *dqb, xfs_dqid_t id);
|
||||
extern int xfs_calc_dquots_per_chunk(unsigned int nbblks);
|
||||
extern void xfs_dqblk_repair(struct xfs_mount *mp, struct xfs_dqblk *dqb,
|
||||
xfs_dqid_t id, uint type);
|
||||
xfs_dqid_t id, xfs_dqtype_t type);
|
||||
|
||||
#endif /* __XFS_QUOTA_H__ */
|
||||
|
Reference in New Issue
Block a user