Re: [PATCH 2/3] xfs: Remove some useless flags tests

Brian Foster
2015-01-15T13:28:09Z

On Thu, Jan 15, 2015 at 11:18:04AM +0100, Jan Kara wrote:
> 'flags' have XFS_ALL_QUOTA_ACCT cleared immediately on function entry.
> There's no point in checking these bits later in the function. Also
> because we check something is going to change, we know some enforcement
> bits are being added and thus there's no point in testing that later.
>
> Signed-off-by: Jan Kara <jack@suse.cz>
> ---

Reviewed-by: Brian Foster <bfoster@redhat.com>

> fs/xfs/xfs_qm_syscalls.c | 15 ++++-----------
> 1 file changed, 4 insertions(+), 11 deletions(-)
>
> diff --git a/fs/xfs/xfs_qm_syscalls.c b/fs/xfs/xfs_qm_syscalls.c
> index b8a565edb4ae..a8c673dbff32 100644
> --- a/fs/xfs/xfs_qm_syscalls.c
> +++ b/fs/xfs/xfs_qm_syscalls.c
> @@ -326,22 +326,16 @@ xfs_qm_scall_quotaon(
> return -EINVAL;
> }
>
> - /* No fs can turn on quotas with a delayed effect */
> - ASSERT((flags & XFS_ALL_QUOTA_ACCT) == 0);
> -
> /*
> * Can't enforce without accounting. We check the superblock
> * qflags here instead of m_qflags because rootfs can have
> * quota acct on ondisk without m_qflags' knowing.
> */
> - if (((flags & XFS_UQUOTA_ACCT) == 0 &&
> - (mp->m_sb.sb_qflags & XFS_UQUOTA_ACCT) == 0 &&
> + if (((mp->m_sb.sb_qflags & XFS_UQUOTA_ACCT) == 0 &&
> (flags & XFS_UQUOTA_ENFD)) ||
> - ((flags & XFS_GQUOTA_ACCT) == 0 &&
> - (mp->m_sb.sb_qflags & XFS_GQUOTA_ACCT) == 0 &&
> + ((mp->m_sb.sb_qflags & XFS_GQUOTA_ACCT) == 0 &&
> (flags & XFS_GQUOTA_ENFD)) ||
> - ((flags & XFS_PQUOTA_ACCT) == 0 &&
> - (mp->m_sb.sb_qflags & XFS_PQUOTA_ACCT) == 0 &&
> + ((mp->m_sb.sb_qflags & XFS_PQUOTA_ACCT) == 0 &&
> (flags & XFS_PQUOTA_ENFD))) {
> xfs_debug(mp,
> "%s: Can't enforce without acct, flags=%x sbflags=%x",
> @@ -380,8 +374,7 @@ xfs_qm_scall_quotaon(
> ((mp->m_sb.sb_qflags & XFS_PQUOTA_ACCT) !=
> (mp->m_qflags & XFS_PQUOTA_ACCT)) ||
> ((mp->m_sb.sb_qflags & XFS_GQUOTA_ACCT) !=
> - (mp->m_qflags & XFS_GQUOTA_ACCT)) ||
> - (flags & XFS_ALL_QUOTA_ENFD) == 0)
> + (mp->m_qflags & XFS_GQUOTA_ACCT)))
> return 0;
>
> if (! XFS_IS_QUOTA_RUNNING(mp))
> --
> 2.1.2
>
> _______________________________________________
> xfs mailing list
> xfs@oss.sgi.com
> http://oss.sgi.com/mailman/listinfo/xfs