Hi all, These patches fix a few problems that I noticed in the code that deals with old btree blocks after a successful repair. First, we clarify how the reaping function works w.r.t. bitmap lifetimes. Next we fix a bug where we could incorrectly invalidate old btree blocks if they were crosslinked. Finally, we convert the reap function to use EFIs so that we can delete blocks without overloading a transaction. If you're going to start using this mess, you probably ought to just pull from my git trees, which are linked below. This is an extraordinary way to destroy everything. Enjoy! Comments and questions are, as always, welcome. --D kernel git tree: https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=repair-reap-fixes --- fs/xfs/scrub/repair.c | 115 ++++++++++++++++++++++++++++--------------------- fs/xfs/scrub/repair.h | 2 - 2 files changed, 67 insertions(+), 50 deletions(-)