From a7a3b5b08557abf7edc6aa4649e85069c3a450b4 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Mon, 27 Feb 2023 14:25:01 -0700 Subject: rebuildnodes: Don't bother with retries if nothing changed --- lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/forrest.go | 1 + lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go | 1 + 2 files changed, 2 insertions(+) (limited to 'lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees') diff --git a/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/forrest.go b/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/forrest.go index 9ec2849..dbbc6eb 100644 --- a/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/forrest.go +++ b/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/forrest.go @@ -22,6 +22,7 @@ import ( type Callbacks interface { AddedItem(ctx context.Context, tree btrfsprim.ObjID, key btrfsprim.Key) + AddedRoot(ctx context.Context, tree btrfsprim.ObjID, root btrfsvol.LogicalAddr) LookupRoot(ctx context.Context, tree btrfsprim.ObjID) (offset btrfsprim.Generation, item btrfsitem.Root, ok bool) LookupUUID(ctx context.Context, uuid btrfsprim.UUID) (id btrfsprim.ObjID, ok bool) } diff --git a/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go b/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go index eab3eb2..39d8871 100644 --- a/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go +++ b/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go @@ -304,6 +304,7 @@ func (tree *RebuiltTree) AddRoot(ctx context.Context, rootNode btrfsvol.LogicalA if (tree.ID == btrfsprim.ROOT_TREE_OBJECTID || tree.ID == btrfsprim.UUID_TREE_OBJECTID) && stats.AddedItems > 0 { tree.forrest.flushNegativeCache(ctx) } + tree.forrest.cb.AddedRoot(ctx, tree.ID, rootNode) } // main public API ///////////////////////////////////////////////////////////////////////////////////////////////////// -- cgit v1.2.3-2-g168b