]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
xfs: cross-reference the realtime bitmap
authorDarrick J. Wong <darrick.wong@oracle.com>
Tue, 27 Feb 2018 04:43:18 +0000 (22:43 -0600)
committerEric Sandeen <sandeen@redhat.com>
Tue, 27 Feb 2018 04:43:18 +0000 (22:43 -0600)
Source kernel commit: 46d9bfb5e706493777b9dfed666cd8967f69e6fd

While we're scrubbing various btrees, cross-reference the records
with the other metadata.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
libxfs/xfs_rtbitmap.c

index 9970c481407d0dd6e28d064290d0945967ed5d0a..cf04ccac4c69e3a74d3c1e45e8eb3c99c25efbe5 100644 (file)
@@ -1092,3 +1092,24 @@ xfs_verify_rtbno(
 {
        return rtbno < mp->m_sb.sb_rblocks;
 }
+
+/* Is the given extent all free? */
+int
+xfs_rtalloc_extent_is_free(
+       struct xfs_mount                *mp,
+       struct xfs_trans                *tp,
+       xfs_rtblock_t                   start,
+       xfs_extlen_t                    len,
+       bool                            *is_free)
+{
+       xfs_rtblock_t                   end;
+       int                             matches;
+       int                             error;
+
+       error = xfs_rtcheck_range(mp, tp, start, len, 1, &end, &matches);
+       if (error)
+               return error;
+
+       *is_free = matches;
+       return 0;
+}