|
@@ -115,6 +115,19 @@ static inline void xfs_dqunlock_nonotify(struct xfs_dquot *dqp)
|
|
|
mutex_unlock(&dqp->q_qlock);
|
|
|
}
|
|
|
|
|
|
+static inline int xfs_this_quota_on(struct xfs_mount *mp, int type)
|
|
|
+{
|
|
|
+ switch (type & XFS_DQ_ALLTYPES) {
|
|
|
+ case XFS_DQ_USER:
|
|
|
+ return XFS_IS_UQUOTA_ON(mp);
|
|
|
+ case XFS_DQ_GROUP:
|
|
|
+ case XFS_DQ_PROJ:
|
|
|
+ return XFS_IS_OQUOTA_ON(mp);
|
|
|
+ default:
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
#define XFS_DQ_IS_LOCKED(dqp) (mutex_is_locked(&((dqp)->q_qlock)))
|
|
|
#define XFS_DQ_IS_DIRTY(dqp) ((dqp)->dq_flags & XFS_DQ_DIRTY)
|
|
|
#define XFS_QM_ISUDQ(dqp) ((dqp)->dq_flags & XFS_DQ_USER)
|
|
@@ -125,10 +138,6 @@ static inline void xfs_dqunlock_nonotify(struct xfs_dquot *dqp)
|
|
|
XFS_DQ_TO_QINF(dqp)->qi_uquotaip : \
|
|
|
XFS_DQ_TO_QINF(dqp)->qi_gquotaip)
|
|
|
|
|
|
-#define XFS_IS_THIS_QUOTA_OFF(d) (! (XFS_QM_ISUDQ(d) ? \
|
|
|
- (XFS_IS_UQUOTA_ON((d)->q_mount)) : \
|
|
|
- (XFS_IS_OQUOTA_ON((d)->q_mount))))
|
|
|
-
|
|
|
extern int xfs_qm_dqread(struct xfs_mount *, xfs_dqid_t, uint,
|
|
|
uint, struct xfs_dquot **);
|
|
|
extern void xfs_qm_dqdestroy(xfs_dquot_t *);
|