diff options
author | Luke Shumaker <lukeshu@lukeshu.com> | 2023-03-17 18:38:14 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@lukeshu.com> | 2023-03-17 18:38:14 -0400 |
commit | 0f85e72d1331b49b52925d6cc5ad083a0376104c (patch) | |
tree | 9ba66e893d6f66096f6b06284d09c8eb3e50facc /lib/btrfs/btrfsitem/item_devextent.go | |
parent | c0f33186aa7a8903c5e7406024f13fad48cd14e3 (diff) | |
parent | 1ea26f04701fa66e36b058f3efb3a6c7059cdc5c (diff) |
Merge branch 'lukeshu/lint'
Diffstat (limited to 'lib/btrfs/btrfsitem/item_devextent.go')
-rw-r--r-- | lib/btrfs/btrfsitem/item_devextent.go | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/lib/btrfs/btrfsitem/item_devextent.go b/lib/btrfs/btrfsitem/item_devextent.go index cade165..6998277 100644 --- a/lib/btrfs/btrfsitem/item_devextent.go +++ b/lib/btrfs/btrfsitem/item_devextent.go @@ -10,8 +10,23 @@ import ( "git.lukeshu.com/btrfs-progs-ng/lib/btrfs/btrfsvol" ) -// key.objectid = device_id -// key.offset = physical_addr +// A DevExtent tracks allocation of the physical address space. +// +// Compare with: +// - BlockGroups, which track allocation of the logical address space. +// - Chunks, which map logical addresses to physical addresses. +// +// The relationship between the three is +// +// DevExtent---[many:one]---Chunk---[one:one]---BlockGroup +// +// The device ID identifies which Dev item describes the physical +// volume that the DevExtent is on. +// +// Key: +// +// key.objectid = device_id +// key.offset = physical_addr type DevExtent struct { // trivial DEV_EXTENT=204 ChunkTree btrfsprim.ObjID `bin:"off=0, siz=8"` // always CHUNK_TREE_OBJECTID ChunkObjectID btrfsprim.ObjID `bin:"off=8, siz=8"` // which chunk within .ChunkTree owns this extent, always FIRST_CHUNK_TREE_OBJECTID |