Struct btrfs_diskformat::RootItem
source · #[repr(C, packed)]pub struct RootItem {Show 25 fields
pub inode: InodeItem,
pub generation: U64<LE>,
pub root_dirid: U64<LE>,
pub bytenr: U64<LE>,
pub byte_limit: U64<LE>,
pub bytes_used: U64<LE>,
pub last_snapshot: U64<LE>,
pub flags: U64<LE>,
pub refs: U32<LE>,
pub drop_progress: Key,
pub drop_level: u8,
pub level: u8,
pub generation_v2: U64<LE>,
pub uuid: UuidBytes,
pub parent_uuid: UuidBytes,
pub received_uuid: UuidBytes,
pub ctransid: U64<LE>,
pub otransid: U64<LE>,
pub stransid: U64<LE>,
pub rtransid: U64<LE>,
pub ctime: Time,
pub otime: Time,
pub stime: Time,
pub rtime: Time,
pub _unused: [u64; 8],
}
Expand description
Defines the location and parameters of the root of a b-tree.
Fields
inode: InodeItem
generation: U64<LE>
root_dirid: U64<LE>
bytenr: U64<LE>
byte_limit: U64<LE>
Currently unused. Always 0.
bytes_used: U64<LE>
Currently unused.
last_snapshot: U64<LE>
The transaction ID of the last transaction that created a snapshot of this root.
flags: U64<LE>
refs: U32<LE>
Only 0 or 1. Historically contained a reference count.
drop_progress: Key
Contains the key of the last dropped item during subvolume removal or relocation.
Value will be zeroed out otherwise.
drop_level: u8
The tree level of the node referenced in drop_progress.
level: u8
The height of this root’s tree.
generation_v2: U64<LE>
Value to help determine whether this root has been modified by an older btrfs implementation.
If the value is equal to generation, the fields below are valid. Otherwise, this indicates the fields are invalid but recoverable.
uuid: UuidBytes
The subvolume’s UUID.
parent_uuid: UuidBytes
The parent’s subvolume UUID.
This is used during send/receive.
received_uuid: UuidBytes
The received UUID.
This is used during send/receive.
ctransid: U64<LE>
The transaction ID of the last transaction that modified the tree.
Note: some operations like internal caches or relocation will not update this value.
otransid: U64<LE>
The transaction ID of the transaction that created the tree.
stransid: U64<LE>
The transaction ID for the transaction that sent this subvolume.
This value is non-zero for a received subvolume.
rtransid: U64<LE>
The transaction ID for the transaction that received this subvolume.
This value is non-zero for a received subvolume.
ctime: Time
The timestamp of the ctransid
.
otime: Time
The timestamp of the otransid
.
stime: Time
The timestamp of the stransid
.
rtime: Time
The timestamp of the rtransid
.
_unused: [u64; 8]
Currently unused. Reserved for future use.