summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2023-07-22 00:21:39 -0600
committerLuke Shumaker <lukeshu@lukeshu.com>2023-07-22 00:21:39 -0600
commit7a1389d3a92955db0ef1e4b5fd9f55cd7906a693 (patch)
treeabd7215da851cbfc8308c22f21a58aeff1d783df
parent18e6066c241cf3d252b6521150843ffc858d8434 (diff)
rebuildtrees: Better organize resolveTreeAugments()
-rw-r--r--cmd/btrfs-rec/inspect/rebuildtrees/rebuild.go22
1 files changed, 11 insertions, 11 deletions
diff --git a/cmd/btrfs-rec/inspect/rebuildtrees/rebuild.go b/cmd/btrfs-rec/inspect/rebuildtrees/rebuild.go
index aeb6751..c0c752b 100644
--- a/cmd/btrfs-rec/inspect/rebuildtrees/rebuild.go
+++ b/cmd/btrfs-rec/inspect/rebuildtrees/rebuild.go
@@ -621,17 +621,6 @@ func (o *rebuilder) resolveTreeAugments(ctx context.Context, treeID btrfsprim.Ob
// algorithm should be defined in a way that makes it easy to adjust the
// relative priorities.
- ret := make(containers.Set[btrfsvol.LogicalAddr])
- illegal := make(containers.Set[btrfsvol.LogicalAddr]) // cannot-be-accepted and already-accepted
- accept := func(item btrfsvol.LogicalAddr) {
- ret.Insert(item)
- for _, list := range o.augmentQueue[treeID].multi {
- if list.Has(item) {
- illegal.InsertFrom(list)
- }
- }
- }
-
sortedItems := maps.Keys(choices)
sort.Slice(sortedItems, func(i, j int) bool {
iItem, jItem := sortedItems[i], sortedItems[j]
@@ -646,6 +635,17 @@ func (o *rebuilder) resolveTreeAugments(ctx context.Context, treeID btrfsprim.Ob
}
return iItem < jItem // laddr is as good a tiebreaker as anything
})
+
+ ret := make(containers.Set[btrfsvol.LogicalAddr])
+ illegal := make(containers.Set[btrfsvol.LogicalAddr]) // cannot-be-accepted and already-accepted
+ accept := func(item btrfsvol.LogicalAddr) {
+ ret.Insert(item)
+ for _, list := range o.augmentQueue[treeID].multi {
+ if list.Has(item) {
+ illegal.InsertFrom(list)
+ }
+ }
+ }
for _, item := range sortedItems {
if !illegal.Has(item) {
accept(item)