btrfs_no_std/core/
root_backup.rs1use {
2 byteorder::LE,
3 static_assertions::const_assert_eq,
4 zerocopy::{AsBytes, FromBytes, Unaligned, U64},
5};
6
7#[derive(Copy, Clone, Debug, AsBytes, FromBytes, Unaligned)]
8#[repr(C, packed)]
9pub struct RootBackup {
10 pub tree_root: U64<LE>,
11 pub tree_root_gen: U64<LE>,
12
13 pub chunk_root: U64<LE>,
14 pub chunk_root_gen: U64<LE>,
15
16 pub extent_root: U64<LE>,
17 pub extent_root_gen: U64<LE>,
18
19 pub fs_root: U64<LE>,
20 pub fs_root_gen: U64<LE>,
21
22 pub dev_root: U64<LE>,
23 pub dev_root_gen: U64<LE>,
24
25 pub csum_root: U64<LE>,
26 pub csum_root_gen: U64<LE>,
27
28 pub total_bytes: U64<LE>,
29 pub bytes_used: U64<LE>,
30
31 pub num_devices: U64<LE>,
32
33 pub _unused_u64s: [U64<LE>; 4],
35
36 pub tree_root_level: u8,
37
38 pub chunk_root_level: u8,
39
40 pub extent_root_level: u8,
41
42 pub fs_root_level: u8,
43
44 pub dev_root_level: u8,
45
46 pub csum_root_level: u8,
47
48 pub _unused_u8s: [u8; 10],
50}
51const_assert_eq!(core::mem::size_of::<RootBackup>(), 168);