On 2020/10/9 19:32, Brian Foster wrote: > On Thu, Oct 08, 2020 at 12:19:09PM +0800, xiakaixu1987@xxxxxxxxx wrote: >> From: Kaixu Xia <kaixuxia@xxxxxxxxxxx> >> >> The xfs_trans_mod_dquot() function will allocate new tp->t_dqinfo if it is >> NULL and make the changes in the tp->t_dqinfo->dqs[XFS_QM_TRANS_{USR,GRP,PRJ}]. >> Nowadays seems none of the callers want to join the dquots to the >> transaction and push them to device when the delta is zero. Actually, >> most of time the caller would check the delta and go on only when the >> delta value is not zero, so we should bail out when it is zero. >> >> Signed-off-by: Kaixu Xia <kaixuxia@xxxxxxxxxxx> >> Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> >> --- >> fs/xfs/xfs_trans_dquot.c | 12 ++++++------ >> 1 file changed, 6 insertions(+), 6 deletions(-) >> >> diff --git a/fs/xfs/xfs_trans_dquot.c b/fs/xfs/xfs_trans_dquot.c >> index 0ebfd7930382..3e37501791bf 100644 >> --- a/fs/xfs/xfs_trans_dquot.c >> +++ b/fs/xfs/xfs_trans_dquot.c >> @@ -194,6 +194,9 @@ xfs_trans_mod_dquot( >> ASSERT(XFS_IS_QUOTA_RUNNING(tp->t_mountp)); >> qtrx = NULL; >> >> + if (!delta) >> + return; >> + > > Note that the calls in xfs_trans_dqresv() also check for delta != 0, so > that could be removed with this patch. That aside: Yeah, I'll do that in the next version. Thanks, Kaixu > > Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx> > >> if (tp->t_dqinfo == NULL) >> xfs_trans_alloc_dqinfo(tp); >> /* >> @@ -205,10 +208,8 @@ xfs_trans_mod_dquot( >> if (qtrx->qt_dquot == NULL) >> qtrx->qt_dquot = dqp; >> >> - if (delta) { >> - trace_xfs_trans_mod_dquot_before(qtrx); >> - trace_xfs_trans_mod_dquot(tp, dqp, field, delta); >> - } >> + trace_xfs_trans_mod_dquot_before(qtrx); >> + trace_xfs_trans_mod_dquot(tp, dqp, field, delta); >> >> switch (field) { >> /* regular disk blk reservation */ >> @@ -261,8 +262,7 @@ xfs_trans_mod_dquot( >> ASSERT(0); >> } >> >> - if (delta) >> - trace_xfs_trans_mod_dquot_after(qtrx); >> + trace_xfs_trans_mod_dquot_after(qtrx); >> } >> >> >> -- >> 2.20.0 >> > -- kaixuxia