summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2023-05-06btrfstree: Fix an issue with .Padding pointing to a buffer it doesn't ownLuke Shumaker
2023-04-17btrfsutil: RebuiltForrest: Add a .RebuiltAddRoots() method, cmd/btrfs-rec: ↵Luke Shumaker
Add a --trees flag
2023-04-17cmd/btrfs-rec, btrfsutil: Delete OldRebuiltForrestLuke Shumaker
2023-04-17btrfsutil.RebuiltForrest, rebuildtrees: Be more permissive of broken UUID_TREEsLuke Shumaker
2023-04-17btrfsutil: RebuiltForrest: Fuss with error messagesLuke Shumaker
2023-04-17btrfsutil: RebuiltForrest: Have LookupRoot return an errorLuke Shumaker
2023-04-17btrfsutil: RebuiltTree: Dedup ownership errorsLuke Shumaker
2023-04-17btrfsutil: RebuiltForrest: Have LookupUUID return an errorLuke Shumaker
2023-04-17btrfsutil: RebuiltTree: Properly track errors for the btrfstree.Tree APILuke Shumaker
2023-04-17btrfsutil: RebuiltTree: Don't have laxAncestors hide UUID errorsLuke Shumaker
2023-04-17btrfsutil: RebuiltTree: Fix potential infinite loop in RebuiltCOWDistanceLuke Shumaker
2023-04-17btrfstree: Wrap the error for UUID lookup failuresLuke Shumaker
2023-04-17btrfs: FS: AcquireNode: Shorten errorsLuke Shumaker
2023-04-17btrfs: Subvolume: loadFile: Fix errors around extent gapsLuke Shumaker
2023-04-17btrfsutil: RebuiltForrest: Add a lax-ancestor modeLuke Shumaker
2023-04-17btrfstree: Path.NodeExpectations(): Drop the ability to fail openLuke Shumaker
2023-04-16btrfsutil: RebuiltTree: TreeWalk: Touch upLuke Shumaker
- Go ahead and have .NodeExpectations fail closed. It shouldn't make a difference at this point, but being stricter here is better. - Add a sanity check that the walker hasn't disagreed from the nodeIndex. At the leafs, the sanity check on items.Load should detect this, but let's detect it earlier to make things easier to debug.
2023-04-16btrfsutil: RebuiltTree: Drop pointless `if`/indentationLuke Shumaker
2023-04-16btrfsutil: RebuiltForrest: Be lazier about calling .RebuiltAddRoot()Luke Shumaker
2023-04-15btrfsutil: RebuiltTree: Clean up lockingLuke Shumaker
2023-04-15Clean-up made possible by btrfsutil.RebuiltForrest implementing btrfs.ReadableFSLuke Shumaker
- rebuildtrees: Use .ForrestLookup instead of .RebuiltTree where possible - btrfsutil: noopRebuiltForrestCallbacks: Use only the generic btrfstree.Forrest API - btrfsutil: RebuiltForrest, RebuiltTree: Avoid unnecessarily reaching into forrest.inner - btrfsutil: RebuiltTree: Drop the .ReadItem() method; it duplicates .TreeLookup without benefit.
2023-04-13btrfsutil: RebuiltForrest: Naively implement the new btrfs.ReadableFS APILuke Shumaker
2023-04-13btrfsutil: RebuiltForrest.RebuiltTree(): Return errorsLuke Shumaker
2023-04-13btrfsutil: RebuiltForrest: Have the ancestor id-to-ptr map persistLuke Shumaker
2023-04-13btrfsutil: RebuiltForrest: readItem: Return a full btrfstree.ItemLuke Shumaker
2023-04-13btrfsutil: RebuiltTree: Track member interior nodes tooLuke Shumaker
2023-04-13btrfsutil: Graph: Track item sizesLuke Shumaker
2023-04-13rebuildtrees: Fuss with the settledItemQueue order to reduce cache-missesLuke Shumaker
2023-04-13btrfsutil: RebuiltTree: Be strict about which KPs to consider validLuke Shumaker
2023-04-13btrfsutil: RebuiltTree: Track the max-key for each path to a nodeLuke Shumaker
2023-04-13btrfsutil: RebuiltTree: Wrap leafToRoots in a structLuke Shumaker
The implication being that I plan on adding more members to the struct.
2023-04-13btrfsutil: RebuiltTree: Refactor .uncachedLeafToRoots()Luke Shumaker
2023-04-13btrfsutil: RebuiltForrest: Allow skipping the .AddedItem loopLuke Shumaker
2023-04-13btrfsutil: Split rebuilt_callbacks.go off from rebuilt_forrest.goLuke Shumaker
2023-04-13btrfsutil: RebuiltForrest: Simplify by taking a btrfs.ReadableFSLuke Shumaker
2023-04-13maps: Get HaveAnyKeysInCommon to be inlinableLuke Shumaker
2023-04-13Try to find misuses of textui.ProgressLuke Shumaker
- Add a runtime-check to Progress to notice if we deadlocked or forgot to call .Done(). - Add a runtime-check to Progress.Done() to panic if .Set() was never called (instead of the old behavior of deadlocking). - grep: Use `defer` when possible, to help remember to call .Done(). - grep: Always either call .Set() right away, or right before calling .Done().
2023-04-13s/INode/Inode/gLuke Shumaker
2023-04-13btrfsitem: Fix Extent.Clone() and Metadata.Clone()Luke Shumaker
2023-04-09btrfs: AcquireNode: Have expectation errors reflect the correct functionLuke Shumaker
2023-04-09btrfstree: Do a better job of checking node ownershipLuke Shumaker
This now considers the interior nodes *between* the root and the leaf, instead of just considering the root and the leaf.
2023-04-09btrfsutil: RebuiltForrest: Don't bother listing trees with no rootsLuke Shumaker
2023-04-09containers: ARCache: Don't count "nested" uses as "frequent" usesLuke Shumaker
This is a modification to how "pinning" is implemented, that should hopefully result in better performance of the ARC policy.
2023-04-04btrfsutil: RebuiltForrest: Include more info when logging failuresLuke Shumaker
2023-04-04btrfsutil: Rename unexported types to be clearer about which system they ↵Luke Shumaker
belong to - nodeInfo → oldRebuiltNodeInfo (old_rebuilt_forrest.go) - itemStats → rebuiltItemStats (rebuilt_tree.go) - rootStats → rebuiltRootStats (rebuilt_tree.go) - nodeScanner → nodeLister (listnodes.go) - nodeStats → nodeListStats (listnodes.go) - scanStats → devScanStats (scan.go)
2023-04-04btrfsutil: RebuiltTree.items: Simplify a touchLuke Shumaker
2023-04-04btrfsutil: Move the shared cache definitions from rebuilt_forrest.go to ↵Luke Shumaker
rebuilt_tree.go
2023-04-04btrfsutil: RebuiltTree: Have .items() take a bool instead of a funcLuke Shumaker
2023-04-04btrfsutil: GraphNode: Add a CheckExpectations methodLuke Shumaker
2023-04-04btrfsutil: RebuiltTree: Take better advantage of cache pinningLuke Shumaker