xfs: remove the XFS_QM_IS[UGP]DQ macros
authorDarrick J. Wong <darrick.wong@oracle.com>
Thu, 16 Jul 2020 00:47:13 +0000 (17:47 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Wed, 29 Jul 2020 03:24:14 +0000 (20:24 -0700)
Remove these macros and use xfs_dquot_type() for everything.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
fs/xfs/xfs_dquot.h
fs/xfs/xfs_qm.h
fs/xfs/xfs_trans_dquot.c

index fcf9bd6766150a512f5f72cf4b08a37d8119e1b2..60bccb5f74356d0a78b0b6b31910a6b1947d384c 100644 (file)
@@ -128,6 +128,12 @@ static inline void xfs_dqunlock(struct xfs_dquot *dqp)
        mutex_unlock(&dqp->q_qlock);
 }
 
+static inline int
+xfs_dquot_type(const struct xfs_dquot *dqp)
+{
+       return dqp->dq_flags & XFS_DQTYPE_REC_MASK;
+}
+
 static inline int xfs_this_quota_on(struct xfs_mount *mp, int type)
 {
        switch (type & XFS_DQTYPE_REC_MASK) {
@@ -192,9 +198,6 @@ void xfs_dquot_to_disk(struct xfs_disk_dquot *ddqp, struct xfs_dquot *dqp);
 
 #define XFS_DQ_IS_LOCKED(dqp)  (mutex_is_locked(&((dqp)->q_qlock)))
 #define XFS_DQ_IS_DIRTY(dqp)   ((dqp)->q_flags & XFS_DQFLAG_DIRTY)
-#define XFS_QM_ISUDQ(dqp)      ((dqp)->dq_flags & XFS_DQTYPE_USER)
-#define XFS_QM_ISPDQ(dqp)      ((dqp)->dq_flags & XFS_DQTYPE_PROJ)
-#define XFS_QM_ISGDQ(dqp)      ((dqp)->dq_flags & XFS_DQTYPE_GROUP)
 
 void           xfs_qm_dqdestroy(struct xfs_dquot *dqp);
 int            xfs_qm_dqflush(struct xfs_dquot *dqp, struct xfs_buf **bpp);
index 21bc67d4962c033c1f84d9ad454eac20ab5948e3..f04af35349d7c62b343389196c2b8085ea86b33d 100644 (file)
@@ -101,17 +101,6 @@ xfs_quota_inode(xfs_mount_t *mp, uint dq_flags)
        return NULL;
 }
 
-static inline int
-xfs_dquot_type(struct xfs_dquot *dqp)
-{
-       if (XFS_QM_ISUDQ(dqp))
-               return XFS_DQTYPE_USER;
-       if (XFS_QM_ISGDQ(dqp))
-               return XFS_DQTYPE_GROUP;
-       ASSERT(XFS_QM_ISPDQ(dqp));
-       return XFS_DQTYPE_PROJ;
-}
-
 extern void    xfs_trans_mod_dquot(struct xfs_trans *tp, struct xfs_dquot *dqp,
                                    uint field, int64_t delta);
 extern void    xfs_trans_dqjoin(struct xfs_trans *, struct xfs_dquot *);
index d7d710d25bbd91e2f1ad673730f447b132426e53..19d3e283aafaaf437730e0baacd4244f42350681 100644 (file)
@@ -156,14 +156,19 @@ xfs_trans_get_dqtrx(
        int                     i;
        struct xfs_dqtrx        *qa;
 
-       if (XFS_QM_ISUDQ(dqp))
+       switch (xfs_dquot_type(dqp)) {
+       case XFS_DQTYPE_USER:
                qa = tp->t_dqinfo->dqs[XFS_QM_TRANS_USR];
-       else if (XFS_QM_ISGDQ(dqp))
+               break;
+       case XFS_DQTYPE_GROUP:
                qa = tp->t_dqinfo->dqs[XFS_QM_TRANS_GRP];
-       else if (XFS_QM_ISPDQ(dqp))
+               break;
+       case XFS_DQTYPE_PROJ:
                qa = tp->t_dqinfo->dqs[XFS_QM_TRANS_PRJ];
-       else
+               break;
+       default:
                return NULL;
+       }
 
        for (i = 0; i < XFS_QM_TRANS_MAXDQS; i++) {
                if (qa[i].qt_dquot == NULL ||
@@ -713,7 +718,7 @@ xfs_trans_dqresv(
 
 error_return:
        xfs_dqunlock(dqp);
-       if (XFS_QM_ISPDQ(dqp))
+       if (xfs_dquot_type(dqp) == XFS_DQTYPE_PROJ)
                return -ENOSPC;
        return -EDQUOT;
 }