summaryrefslogtreecommitdiff
path: root/fs/xfs/scrub/agheader_repair.c
diff options
context:
space:
mode:
authorDarrick J. Wong <darrick.wong@oracle.com>2020-10-25 17:14:31 -0700
committerDarrick J. Wong <darrick.wong@oracle.com>2020-10-26 18:32:12 -0700
commit8747c819ec4bda17d271b212fb89b4d641e5c387 (patch)
treefeff1fef3b1c20dc8e139b2ee7a2f726e557f9ac /fs/xfs/scrub/agheader_repair.c
parent5ad7933e28598ad5d649b967a720faba615f93c4 (diff)
xfs: convert xbitmap to interval treerepair-bitmap-rework_2020-10-26
Convert the xbitmap code to use interval trees instead of linked lists. This reduces the amount of coding required to handle the disunion operation and in the future will make it easier to set bits in arbitrary order yet later be able to extract maximally sized extents, which we'll need for rebuilding certain structures. We define our own interval tree type so that it can deal with 64-bit indices even on 32-bit machines. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Diffstat (limited to 'fs/xfs/scrub/agheader_repair.c')
-rw-r--r--fs/xfs/scrub/agheader_repair.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/xfs/scrub/agheader_repair.c b/fs/xfs/scrub/agheader_repair.c
index 24ed0674ca62..e0ac3ee8535c 100644
--- a/fs/xfs/scrub/agheader_repair.c
+++ b/fs/xfs/scrub/agheader_repair.c
@@ -516,10 +516,8 @@ xrep_agfl_collect_blocks(
* Drop the freesp meta blocks that are in use by btrees.
* The remaining blocks /should/ be AGFL blocks.
*/
- error = xbitmap_disunion(agfl_extents, &ra.agmetablocks);
+ xbitmap_disunion(agfl_extents, &ra.agmetablocks);
xbitmap_destroy(&ra.agmetablocks);
- if (error)
- return error;
/*
* Calculate the new AGFL size. If we found more blocks than fit in