Commit c47b74fb authored by Darrick J. Wong's avatar Darrick J. Wong

xfs: don't clobber inobt/finobt cursors when xref with rmap

Even if we can't use the inobt/finobt cursors to count the number of
inode btree blocks, we are never allowed to clobber the cursor of the
btree being checked, so don't do this.  Found by fuzzing level = ones
in xfs/364.
Signed-off-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
parent 70c57dcd
...@@ -391,12 +391,12 @@ xfs_scrub_iallocbt_xref_rmap_btreeblks( ...@@ -391,12 +391,12 @@ xfs_scrub_iallocbt_xref_rmap_btreeblks(
/* Check that we saw as many inobt blocks as the rmap says. */ /* Check that we saw as many inobt blocks as the rmap says. */
error = xfs_btree_count_blocks(sc->sa.ino_cur, &inobt_blocks); error = xfs_btree_count_blocks(sc->sa.ino_cur, &inobt_blocks);
if (!xfs_scrub_should_check_xref(sc, &error, &sc->sa.ino_cur)) if (!xfs_scrub_process_error(sc, 0, 0, &error))
return; return;
if (sc->sa.fino_cur) { if (sc->sa.fino_cur) {
error = xfs_btree_count_blocks(sc->sa.fino_cur, &finobt_blocks); error = xfs_btree_count_blocks(sc->sa.fino_cur, &finobt_blocks);
if (!xfs_scrub_should_check_xref(sc, &error, &sc->sa.fino_cur)) if (!xfs_scrub_process_error(sc, 0, 0, &error))
return; return;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment