xfs: standardize ondisk to incore conversion for bmap btrees
authorDarrick J. Wong <djwong@kernel.org>
Wed, 12 Apr 2023 02:00:04 +0000 (19:00 -0700)
committerDarrick J. Wong <djwong@kernel.org>
Wed, 12 Apr 2023 02:00:04 +0000 (19:00 -0700)
Fix all xfs_bmbt_disk_get_all callsites to call xfs_bmap_validate_extent
and bubble up corruption reports.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
fs/xfs/scrub/bmap.c

index a5078d6..6188eba 100644 (file)
@@ -471,6 +471,12 @@ xchk_bmapbt_rec(
                return 0;
 
        xfs_bmbt_disk_get_all(&rec->bmbt, &irec);
+       if (xfs_bmap_validate_extent(ip, info->whichfork, &irec) != NULL) {
+               xchk_fblock_set_corrupt(bs->sc, info->whichfork,
+                               irec.br_startoff);
+               return 0;
+       }
+
        if (!xfs_iext_lookup_extent(ip, ifp, irec.br_startoff, &icur,
                                &iext_irec) ||
            irec.br_startoff != iext_irec.br_startoff ||