Re: [PATCH v6 1/3] xfs: delete duplicated tp->t_dqinfo null check and allocation

Darrick J. Wong
2020-11-13T01:58:26Z

On Thu, Nov 12, 2020 at 10:53:39AM +0800, kaixuxia wrote:
>
>
> On 2020/10/27 6:52, Darrick J. Wong wrote:
> > On Fri, Oct 16, 2020 at 11:38:26AM +0800, xiakaixu1987@gmail.com wrote:
> >> From: Kaixu Xia <kaixuxia@tencent.com>
> >>
> >> The function xfs_trans_mod_dquot_byino() wraps around
> >> xfs_trans_mod_dquot() to account for quotas, and also there is the
> >> function call chain xfs_trans_reserve_quota_bydquots -> xfs_trans_dqresv
> >> -> xfs_trans_mod_dquot, both of them do the duplicated null check and
> >> allocation. Thus we can delete the duplicated operation from them.
> >>
> >> Signed-off-by: Kaixu Xia <kaixuxia@tencent.com>
> >> Reviewed-by: Brian Foster <bfoster@redhat.com>
> >> Reviewed-by: Christoph Hellwig <hch@lst.de>
> >
> > HAH this got all the way to v6, sorry I suck. :(
> >
> > Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
>
> Hi Darrick,
>
> There are some patches that have been reviewed but not been merged
> into xfs for-next branch, I will reply to them.
> Sorry for the noise:)

Same situation here -- these are 5.11 cleanups and I'm still working on
bug fixes for 5.10. If you have time to review patches, can you please
have a look at the unreviewed patches in the series "xfs: fix various
scrub problems", please?

--D

> Thanks,
> Kaixu
> >
> > --D
> >
> >> ---
> >> fs/xfs/xfs_trans_dquot.c | 7 -------
> >> 1 file changed, 7 deletions(-)
> >>
> >> diff --git a/fs/xfs/xfs_trans_dquot.c b/fs/xfs/xfs_trans_dquot.c
> >> index fe45b0c3970c..67f1e275b34d 100644
> >> --- a/fs/xfs/xfs_trans_dquot.c
> >> +++ b/fs/xfs/xfs_trans_dquot.c
> >> @@ -143,9 +143,6 @@ xfs_trans_mod_dquot_byino(
> >> xfs_is_quota_inode(&mp->m_sb, ip->i_ino))
> >> return;
> >>
> >> - if (tp->t_dqinfo == NULL)
> >> - xfs_trans_alloc_dqinfo(tp);
> >> -
> >> if (XFS_IS_UQUOTA_ON(mp) && ip->i_udquot)
> >> (void) xfs_trans_mod_dquot(tp, ip->i_udquot, field, delta);
> >> if (XFS_IS_GQUOTA_ON(mp) && ip->i_gdquot)
> >> @@ -698,7 +695,6 @@ xfs_trans_dqresv(
> >> * because we don't have the luxury of a transaction envelope then.
> >> */
> >> if (tp) {
> >> - ASSERT(tp->t_dqinfo);
> >> ASSERT(flags & XFS_QMOPT_RESBLK_MASK);
> >> if (nblks != 0)
> >> xfs_trans_mod_dquot(tp, dqp,
> >> @@ -752,9 +748,6 @@ xfs_trans_reserve_quota_bydquots(
> >> if (!XFS_IS_QUOTA_RUNNING(mp) || !XFS_IS_QUOTA_ON(mp))
> >> return 0;
> >>
> >> - if (tp && tp->t_dqinfo == NULL)
> >> - xfs_trans_alloc_dqinfo(tp);
> >> -
> >> ASSERT(flags & XFS_QMOPT_RESBLK_MASK);
> >>
> >> if (udqp) {
> >> --
> >> 2.20.0
> >>
>
> --
> kaixuxia