mirror of
https://github.com/torvalds/linux.git
synced 2026-09-13 15:40:03 +02:00
xfs: bail out on bitmap errors in xrep_agfl_fill
LOLLM also points out that the xagb_bitmap_set call in xrep_agfl_fill
can fail, but we don't check the result of xagb_bitmap_walk, so we
silently drop the error and proceed with inconsistent incore data.
That shouldn't be allowed.
Cc: stable@vger.kernel.org # v6.6
Fixes: 014ad53732 ("xfs: use per-AG bitmaps to reap unused AG metadata blocks during repair")
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Assisted-by: LOLLM # finding obvious bugs
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
This commit is contained in:
parent
3466dfef0a
commit
eaf580538e
|
|
@ -699,7 +699,9 @@ xrep_agfl_init_header(
|
|||
*/
|
||||
xagb_bitmap_init(&af.used_extents);
|
||||
af.agfl_bno = xfs_buf_to_agfl_bno(agfl_bp);
|
||||
xagb_bitmap_walk(agfl_extents, xrep_agfl_fill, &af);
|
||||
error = xagb_bitmap_walk(agfl_extents, xrep_agfl_fill, &af);
|
||||
if (error && error != -ECANCELED)
|
||||
goto err_undo;
|
||||
error = xagb_bitmap_disunion(agfl_extents, &af.used_extents);
|
||||
if (error)
|
||||
goto err_undo;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user