summaryrefslogtreecommitdiff
path: root/cmd/btrfs-rec/inspect_lstrees.go
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2023-03-29 10:00:18 -0600
committerLuke Shumaker <lukeshu@lukeshu.com>2023-03-30 10:03:50 -0600
commit94aa0ec3e9f7145cdf177ad6f6d3d8b7d5bdbef7 (patch)
tree2e0bafd99a433d7271bf42e68ab1b5c1eba99e2b /cmd/btrfs-rec/inspect_lstrees.go
parent2eb7033431866cb05d235eb10c280a4810bf88a7 (diff)
btrfstree: Change the NodeSource API so that it can do caching
Diffstat (limited to 'cmd/btrfs-rec/inspect_lstrees.go')
-rw-r--r--cmd/btrfs-rec/inspect_lstrees.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/cmd/btrfs-rec/inspect_lstrees.go b/cmd/btrfs-rec/inspect_lstrees.go
index 9639a2e..bdbdca2 100644
--- a/cmd/btrfs-rec/inspect_lstrees.go
+++ b/cmd/btrfs-rec/inspect_lstrees.go
@@ -106,10 +106,11 @@ func init() {
continue
}
visitedNodes.Insert(laddr)
- node, err := fs.ReadNode(ctx, laddr, btrfstree.NodeExpectations{
+ node, err := fs.AcquireNode(ctx, laddr, btrfstree.NodeExpectations{
LAddr: containers.OptionalValue(laddr),
})
if err != nil {
+ fs.ReleaseNode(node)
treeErrCnt++
continue
}
@@ -117,6 +118,7 @@ func init() {
typ := item.Key.ItemType
treeItemCnt[typ]++
}
+ fs.ReleaseNode(node)
}
flush()
}