Message ID | 159488196391.3813063.17612590871057481605.stgit@magnolia (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | xfs: separate dquot type from flags | expand |
On Wed, Jul 15, 2020 at 11:46:03PM -0700, Darrick J. Wong wrote: > From: Darrick J. Wong <darrick.wong@oracle.com> > > When XFS' quota functions take a parameter for the quota type, they only > care about the three quota record types (user, group, project). > Internal state flags and whatnot should never be passed by callers and > are an error. Now that we've moved responsibility for filtering out > internal state to the callers, we can drop the masking everywhere else. > > In other words, if you call a quota function, you must only pass in > XFS_DQTYPE_*. > > Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Looks good. Reviewed-by: Dave Chinner <dchinner@redhat.com>
On Wed, Jul 15, 2020 at 11:46:03PM -0700, Darrick J. Wong wrote: > From: Darrick J. Wong <darrick.wong@oracle.com> > > When XFS' quota functions take a parameter for the quota type, they only > care about the three quota record types (user, group, project). > Internal state flags and whatnot should never be passed by callers and > are an error. Now that we've moved responsibility for filtering out > internal state to the callers, we can drop the masking everywhere else. > > In other words, if you call a quota function, you must only pass in > XFS_DQTYPE_*. > > Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Looks good, Reviewed-by: Christoph Hellwig <hch@lst.de>
diff --git a/fs/xfs/xfs_dquot.h b/fs/xfs/xfs_dquot.h index 07e18ce33560..81ba614439bd 100644 --- a/fs/xfs/xfs_dquot.h +++ b/fs/xfs/xfs_dquot.h @@ -136,7 +136,7 @@ xfs_dquot_type(const struct xfs_dquot *dqp) static inline int xfs_this_quota_on(struct xfs_mount *mp, int type) { - switch (type & XFS_DQTYPE_REC_MASK) { + switch (type) { case XFS_DQTYPE_USER: return XFS_IS_UQUOTA_ON(mp); case XFS_DQTYPE_GROUP: @@ -150,7 +150,7 @@ static inline int xfs_this_quota_on(struct xfs_mount *mp, int type) static inline struct xfs_dquot *xfs_inode_dquot(struct xfs_inode *ip, int type) { - switch (type & XFS_DQTYPE_REC_MASK) { + switch (type) { case XFS_DQTYPE_USER: return ip->i_udquot; case XFS_DQTYPE_GROUP: diff --git a/fs/xfs/xfs_qm.h b/fs/xfs/xfs_qm.h index f04af35349d7..fac6fa81f1fa 100644 --- a/fs/xfs/xfs_qm.h +++ b/fs/xfs/xfs_qm.h @@ -88,7 +88,7 @@ xfs_dquot_tree( static inline struct xfs_inode * xfs_quota_inode(xfs_mount_t *mp, uint dq_flags) { - switch (dq_flags & XFS_DQTYPE_REC_MASK) { + switch (dq_flags) { case XFS_DQTYPE_USER: return mp->m_quotainfo->qi_uquotaip; case XFS_DQTYPE_GROUP: