Re: [PATCH] xfs: calculate correct offset in xfs_scrub_quota_item
From: Darrick J. Wong <hidden>
Date: 2017-11-28 02:21:00
On Mon, Nov 27, 2017 at 06:04:55PM -0600, Eric Sandeen wrote:
It's only used for tracepoints so it's relatively harmless,
but the offset is calculated incorrectly in xfs_scrub_quota_item.
qi_dqperchunk is the nr. of dquots per "chunk" which we have
conveniently *cough* defined to always be 1 FSB. Therefore
block_offset * qi_dqperchunk == first id in that chunk,
and so offset = id / qi_dqperchunk
id * dqperchunk is ... meaningless.
Fixes-coverity-id: 1423965
Fixes: c2fc338c ("xfs: scrub quota information")
Signed-off-by: Eric Sandeen <redacted>Looks ok, will test Reviewed-by: Darrick J. Wong <redacted>
quoted hunk ↗ jump to hunk
--- compile-tested onlydiff --git a/fs/xfs/scrub/quota.c b/fs/xfs/scrub/quota.c index 8e58ba8..2eac160 100644 --- a/fs/xfs/scrub/quota.c +++ b/fs/xfs/scrub/quota.c@@ -107,7 +107,7 @@ unsigned long long rcount; xfs_ino_t fs_icount; - offset = id * qi->qi_dqperchunk; + offset = id / qi->qi_dqperchunk; /* * We fed $id and DQNEXT into the xfs_qm_dqget call, which means --To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html