summaryrefslogtreecommitdiff
path: root/lib/btrfsprogs/btrfsutil/csums.go
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2022-08-28 17:55:36 -0600
committerLuke Shumaker <lukeshu@lukeshu.com>2022-08-28 18:09:10 -0600
commite2cdb05eac6726c59fe1831876fddd8037156d67 (patch)
tree157e86b1088710e4f7b93ea8dc8c08c32eeb70ef /lib/btrfsprogs/btrfsutil/csums.go
parenta2743121bad8a390dd248e3ec5c8d6844876832a (diff)
btrfs: Split off btrfstree and btrfsprim sub-packages
Diffstat (limited to 'lib/btrfsprogs/btrfsutil/csums.go')
-rw-r--r--lib/btrfsprogs/btrfsutil/csums.go7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/btrfsprogs/btrfsutil/csums.go b/lib/btrfsprogs/btrfsutil/csums.go
index 3c3d85f..a49f584 100644
--- a/lib/btrfsprogs/btrfsutil/csums.go
+++ b/lib/btrfsprogs/btrfsutil/csums.go
@@ -9,11 +9,12 @@ import (
"git.lukeshu.com/btrfs-progs-ng/lib/btrfs"
"git.lukeshu.com/btrfs-progs-ng/lib/btrfs/btrfsitem"
+ "git.lukeshu.com/btrfs-progs-ng/lib/btrfs/btrfsprim"
"git.lukeshu.com/btrfs-progs-ng/lib/btrfs/btrfssum"
"git.lukeshu.com/btrfs-progs-ng/lib/btrfs/btrfsvol"
)
-func ChecksumLogical(fs btrfs.Trees, alg btrfssum.CSumType, laddr btrfsvol.LogicalAddr) (btrfssum.CSum, error) {
+func ChecksumLogical(fs *btrfs.FS, alg btrfssum.CSumType, laddr btrfsvol.LogicalAddr) (btrfssum.CSum, error) {
var dat [btrfssum.BlockSize]byte
if _, err := fs.ReadAt(dat[:], laddr); err != nil {
return btrfssum.CSum{}, err
@@ -37,8 +38,8 @@ func ChecksumQualifiedPhysical(fs *btrfs.FS, alg btrfssum.CSumType, paddr btrfsv
return ChecksumPhysical(dev, alg, paddr.Addr)
}
-func LookupCSum(fs btrfs.Trees, alg btrfssum.CSumType, laddr btrfsvol.LogicalAddr) (btrfssum.SumRun[btrfsvol.LogicalAddr], error) {
- item, err := fs.TreeSearch(btrfs.CSUM_TREE_OBJECTID, func(key btrfs.Key, size uint32) int {
+func LookupCSum(fs *btrfs.FS, alg btrfssum.CSumType, laddr btrfsvol.LogicalAddr) (btrfssum.SumRun[btrfsvol.LogicalAddr], error) {
+ item, err := fs.TreeSearch(btrfsprim.CSUM_TREE_OBJECTID, func(key btrfsprim.Key, size uint32) int {
itemBeg := btrfsvol.LogicalAddr(key.ObjectID)
numSums := int64(size) / int64(alg.Size())
itemEnd := itemBeg + btrfsvol.LogicalAddr(numSums*btrfssum.BlockSize)