Re: [PATCH] xfs: fix dqiterate thinko

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 07, 2023 at 07:40:30PM -0700, Darrick J. Wong wrote:
> From: Darrick J. Wong <djwong@xxxxxxxxxx>
> 
> For some unknown reason, when I converted the incore dquot objects to
> store the dquot id in host endian order, I removed the increment here.
> This causes the scan to stop after retrieving the root dquot, which
> severely limits the usefulness of the quota scrubber.  Fix the lost
> increment, though it won't fix the problem that the quota iterator code
> filters out zeroed dquot records.
> 
> Fixes: c51df7334167e ("xfs: stop using q_core.d_id in the quota code")
> Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx>
> ---
>  fs/xfs/xfs_dquot.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/xfs/xfs_dquot.c b/fs/xfs/xfs_dquot.c
> index 17c64b7b91d02..9e6dc5972ec68 100644
> --- a/fs/xfs/xfs_dquot.c
> +++ b/fs/xfs/xfs_dquot.c
> @@ -1458,7 +1458,7 @@ xfs_qm_dqiterate(
>  			return error;
>  
>  		error = iter_fn(dq, type, priv);
> -		id = dq->q_id;
> +		id = dq->q_id + 1;
>  		xfs_qm_dqput(dq);
>  	} while (error == 0 && id != 0);

I see how this happened looking at the commit mentioned, and how it
would have easily been missed on review - there was a separate
"id++" line after the xfs_qm_dqput() call that was removed that
should have been left in place. This change obviously restores the
previous behaviour.

Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>

-- 
Dave Chinner
david@xxxxxxxxxxxxx



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux