ReactOS  0.4.15-dev-1389-g828d5fa
btrfs.h
Go to the documentation of this file.
1 /* btrfs.h
2  * Generic btrfs header file. Thanks to whoever it was who wrote
3  * https://btrfs.wiki.kernel.org/index.php/On-disk_Format - you saved me a lot of time!
4  *
5  * I release this file, and this file only, into the public domain - do whatever
6  * you want with it. You don't have to, but I'd appreciate if you let me know if you
7  * use it anything cool - mark@harmstone.com. */
8 
9 #pragma once
10 
11 #include <stdint.h>
12 
13 static const uint64_t superblock_addrs[] = { 0x10000, 0x4000000, 0x4000000000, 0x4000000000000, 0 };
14 
15 #define BTRFS_MAGIC 0x4d5f53665248425f
16 #define MAX_LABEL_SIZE 0x100
17 #define SUBVOL_ROOT_INODE 0x100
18 
19 #define TYPE_INODE_ITEM 0x01
20 #define TYPE_INODE_REF 0x0C
21 #define TYPE_INODE_EXTREF 0x0D
22 #define TYPE_XATTR_ITEM 0x18
23 #define TYPE_ORPHAN_INODE 0x30
24 #define TYPE_DIR_ITEM 0x54
25 #define TYPE_DIR_INDEX 0x60
26 #define TYPE_EXTENT_DATA 0x6C
27 #define TYPE_EXTENT_CSUM 0x80
28 #define TYPE_ROOT_ITEM 0x84
29 #define TYPE_ROOT_BACKREF 0x90
30 #define TYPE_ROOT_REF 0x9C
31 #define TYPE_EXTENT_ITEM 0xA8
32 #define TYPE_METADATA_ITEM 0xA9
33 #define TYPE_TREE_BLOCK_REF 0xB0
34 #define TYPE_EXTENT_DATA_REF 0xB2
35 #define TYPE_EXTENT_REF_V0 0xB4
36 #define TYPE_SHARED_BLOCK_REF 0xB6
37 #define TYPE_SHARED_DATA_REF 0xB8
38 #define TYPE_BLOCK_GROUP_ITEM 0xC0
39 #define TYPE_FREE_SPACE_INFO 0xC6
40 #define TYPE_FREE_SPACE_EXTENT 0xC7
41 #define TYPE_FREE_SPACE_BITMAP 0xC8
42 #define TYPE_DEV_EXTENT 0xCC
43 #define TYPE_DEV_ITEM 0xD8
44 #define TYPE_CHUNK_ITEM 0xE4
45 #define TYPE_TEMP_ITEM 0xF8
46 #define TYPE_DEV_STATS 0xF9
47 #define TYPE_SUBVOL_UUID 0xFB
48 #define TYPE_SUBVOL_REC_UUID 0xFC
49 
50 #define BTRFS_ROOT_ROOT 1
51 #define BTRFS_ROOT_EXTENT 2
52 #define BTRFS_ROOT_CHUNK 3
53 #define BTRFS_ROOT_DEVTREE 4
54 #define BTRFS_ROOT_FSTREE 5
55 #define BTRFS_ROOT_TREEDIR 6
56 #define BTRFS_ROOT_CHECKSUM 7
57 #define BTRFS_ROOT_UUID 9
58 #define BTRFS_ROOT_FREE_SPACE 0xa
59 #define BTRFS_ROOT_DATA_RELOC 0xFFFFFFFFFFFFFFF7
60 
61 #define BTRFS_COMPRESSION_NONE 0
62 #define BTRFS_COMPRESSION_ZLIB 1
63 #define BTRFS_COMPRESSION_LZO 2
64 #define BTRFS_COMPRESSION_ZSTD 3
65 
66 #define BTRFS_ENCRYPTION_NONE 0
67 
68 #define BTRFS_ENCODING_NONE 0
69 
70 #define EXTENT_TYPE_INLINE 0
71 #define EXTENT_TYPE_REGULAR 1
72 #define EXTENT_TYPE_PREALLOC 2
73 
74 #define BLOCK_FLAG_DATA 0x001
75 #define BLOCK_FLAG_SYSTEM 0x002
76 #define BLOCK_FLAG_METADATA 0x004
77 #define BLOCK_FLAG_RAID0 0x008
78 #define BLOCK_FLAG_RAID1 0x010
79 #define BLOCK_FLAG_DUPLICATE 0x020
80 #define BLOCK_FLAG_RAID10 0x040
81 #define BLOCK_FLAG_RAID5 0x080
82 #define BLOCK_FLAG_RAID6 0x100
83 #define BLOCK_FLAG_RAID1C3 0x200
84 #define BLOCK_FLAG_RAID1C4 0x400
85 
86 #define FREE_SPACE_CACHE_ID 0xFFFFFFFFFFFFFFF5
87 #define EXTENT_CSUM_ID 0xFFFFFFFFFFFFFFF6
88 #define BALANCE_ITEM_ID 0xFFFFFFFFFFFFFFFC
89 
90 #define BTRFS_INODE_NODATASUM 0x001
91 #define BTRFS_INODE_NODATACOW 0x002
92 #define BTRFS_INODE_READONLY 0x004
93 #define BTRFS_INODE_NOCOMPRESS 0x008
94 #define BTRFS_INODE_PREALLOC 0x010
95 #define BTRFS_INODE_SYNC 0x020
96 #define BTRFS_INODE_IMMUTABLE 0x040
97 #define BTRFS_INODE_APPEND 0x080
98 #define BTRFS_INODE_NODUMP 0x100
99 #define BTRFS_INODE_NOATIME 0x200
100 #define BTRFS_INODE_DIRSYNC 0x400
101 #define BTRFS_INODE_COMPRESS 0x800
102 
103 #define BTRFS_SUBVOL_READONLY 0x1
104 
105 #define BTRFS_COMPAT_RO_FLAGS_FREE_SPACE_CACHE 0x1
106 #define BTRFS_COMPAT_RO_FLAGS_FREE_SPACE_CACHE_VALID 0x2
107 
108 #define BTRFS_INCOMPAT_FLAGS_MIXED_BACKREF 0x0001
109 #define BTRFS_INCOMPAT_FLAGS_DEFAULT_SUBVOL 0x0002
110 #define BTRFS_INCOMPAT_FLAGS_MIXED_GROUPS 0x0004
111 #define BTRFS_INCOMPAT_FLAGS_COMPRESS_LZO 0x0008
112 #define BTRFS_INCOMPAT_FLAGS_COMPRESS_ZSTD 0x0010
113 #define BTRFS_INCOMPAT_FLAGS_BIG_METADATA 0x0020
114 #define BTRFS_INCOMPAT_FLAGS_EXTENDED_IREF 0x0040
115 #define BTRFS_INCOMPAT_FLAGS_RAID56 0x0080
116 #define BTRFS_INCOMPAT_FLAGS_SKINNY_METADATA 0x0100
117 #define BTRFS_INCOMPAT_FLAGS_NO_HOLES 0x0200
118 #define BTRFS_INCOMPAT_FLAGS_METADATA_UUID 0x0400
119 #define BTRFS_INCOMPAT_FLAGS_RAID1C34 0x0800
120 
121 #define BTRFS_SUPERBLOCK_FLAGS_SEEDING 0x100000000
122 
123 #define BTRFS_ORPHAN_INODE_OBJID 0xFFFFFFFFFFFFFFFB
124 
125 #define CSUM_TYPE_CRC32C 0
126 #define CSUM_TYPE_XXHASH 1
127 #define CSUM_TYPE_SHA256 2
128 #define CSUM_TYPE_BLAKE2 3
129 
130 #pragma pack(push, 1)
131 
132 typedef struct {
134 } BTRFS_UUID;
135 
136 typedef struct {
140 } KEY;
141 
142 #define HEADER_FLAG_WRITTEN 0x000000000000001
143 #define HEADER_FLAG_SHARED_BACKREF 0x000000000000002
144 #define HEADER_FLAG_MIXED_BACKREF 0x100000000000000
145 
146 typedef struct {
156 } tree_header;
157 
158 typedef struct {
162 } leaf_node;
163 
164 typedef struct {
168 } internal_node;
169 
170 typedef struct {
185 } DEV_ITEM;
186 
187 #define SYS_CHUNK_ARRAY_SIZE 0x800
188 #define BTRFS_NUM_BACKUP_ROOTS 4
189 
190 typedef struct {
215 
216 typedef struct {
250  uint8_t sys_chunk_array[SYS_CHUNK_ARRAY_SIZE];
253 } superblock;
254 
255 #define BTRFS_TYPE_UNKNOWN 0
256 #define BTRFS_TYPE_FILE 1
257 #define BTRFS_TYPE_DIRECTORY 2
258 #define BTRFS_TYPE_CHARDEV 3
259 #define BTRFS_TYPE_BLOCKDEV 4
260 #define BTRFS_TYPE_FIFO 5
261 #define BTRFS_TYPE_SOCKET 6
262 #define BTRFS_TYPE_SYMLINK 7
263 #define BTRFS_TYPE_EA 8
264 
265 typedef struct {
271  char name[1];
272 } DIR_ITEM;
273 
274 typedef struct {
277 } BTRFS_TIME;
278 
279 typedef struct {
297 } INODE_ITEM;
298 
299 typedef struct {
325 } ROOT_ITEM;
326 
327 typedef struct {
337 } CHUNK_ITEM;
338 
339 typedef struct {
344 
345 typedef struct {
353 } EXTENT_DATA;
354 
355 typedef struct {
360 } EXTENT_DATA2;
361 
362 typedef struct {
365  char name[1];
366 } INODE_REF;
367 
368 typedef struct {
372  char name[1];
373 } INODE_EXTREF;
374 
375 #define EXTENT_ITEM_DATA 0x001
376 #define EXTENT_ITEM_TREE_BLOCK 0x002
377 #define EXTENT_ITEM_SHARED_BACKREFS 0x100
378 
379 typedef struct {
383 } EXTENT_ITEM;
384 
385 typedef struct {
388 } EXTENT_ITEM2;
389 
390 typedef struct {
393 
394 typedef struct {
399 
400 typedef struct {
403 
404 typedef struct {
410 
411 typedef struct {
416 
417 typedef struct {
422 } EXTENT_REF_V0;
423 
424 typedef struct {
427 
428 typedef struct {
432 
433 #define FREE_SPACE_EXTENT 1
434 #define FREE_SPACE_BITMAP 2
435 
436 typedef struct {
441 
442 typedef struct {
448 
449 typedef struct {
453  char name[1];
454 } ROOT_REF;
455 
456 typedef struct {
462 } DEV_EXTENT;
463 
464 #define BALANCE_FLAGS_DATA 0x1
465 #define BALANCE_FLAGS_SYSTEM 0x2
466 #define BALANCE_FLAGS_METADATA 0x4
467 
468 #define BALANCE_ARGS_FLAGS_PROFILES 0x001
469 #define BALANCE_ARGS_FLAGS_USAGE 0x002
470 #define BALANCE_ARGS_FLAGS_DEVID 0x004
471 #define BALANCE_ARGS_FLAGS_DRANGE 0x008
472 #define BALANCE_ARGS_FLAGS_VRANGE 0x010
473 #define BALANCE_ARGS_FLAGS_LIMIT 0x020
474 #define BALANCE_ARGS_FLAGS_LIMIT_RANGE 0x040
475 #define BALANCE_ARGS_FLAGS_STRIPES_RANGE 0x080
476 #define BALANCE_ARGS_FLAGS_CONVERT 0x100
477 #define BALANCE_ARGS_FLAGS_SOFT 0x200
478 #define BALANCE_ARGS_FLAGS_USAGE_RANGE 0x400
479 
480 typedef struct {
482 
483  union {
485  struct {
488  };
489  };
490 
498 
499  union {
501  struct {
504  };
505  };
506 
510 } BALANCE_ARGS;
511 
512 typedef struct {
518 } BALANCE_ITEM;
519 
520 #define BTRFS_FREE_SPACE_USING_BITMAPS 1
521 
522 typedef struct {
526 
527 #define BTRFS_DEV_STAT_WRITE_ERRORS 0
528 #define BTRFS_DEV_STAT_READ_ERRORS 1
529 #define BTRFS_DEV_STAT_FLUSH_ERRORS 2
530 #define BTRFS_DEV_STAT_CORRUPTION_ERRORS 3
531 #define BTRFS_DEV_STAT_GENERATION_ERRORS 4
532 
533 #define BTRFS_SEND_CMD_SUBVOL 1
534 #define BTRFS_SEND_CMD_SNAPSHOT 2
535 #define BTRFS_SEND_CMD_MKFILE 3
536 #define BTRFS_SEND_CMD_MKDIR 4
537 #define BTRFS_SEND_CMD_MKNOD 5
538 #define BTRFS_SEND_CMD_MKFIFO 6
539 #define BTRFS_SEND_CMD_MKSOCK 7
540 #define BTRFS_SEND_CMD_SYMLINK 8
541 #define BTRFS_SEND_CMD_RENAME 9
542 #define BTRFS_SEND_CMD_LINK 10
543 #define BTRFS_SEND_CMD_UNLINK 11
544 #define BTRFS_SEND_CMD_RMDIR 12
545 #define BTRFS_SEND_CMD_SET_XATTR 13
546 #define BTRFS_SEND_CMD_REMOVE_XATTR 14
547 #define BTRFS_SEND_CMD_WRITE 15
548 #define BTRFS_SEND_CMD_CLONE 16
549 #define BTRFS_SEND_CMD_TRUNCATE 17
550 #define BTRFS_SEND_CMD_CHMOD 18
551 #define BTRFS_SEND_CMD_CHOWN 19
552 #define BTRFS_SEND_CMD_UTIMES 20
553 #define BTRFS_SEND_CMD_END 21
554 #define BTRFS_SEND_CMD_UPDATE_EXTENT 22
555 
556 #define BTRFS_SEND_TLV_UUID 1
557 #define BTRFS_SEND_TLV_TRANSID 2
558 #define BTRFS_SEND_TLV_INODE 3
559 #define BTRFS_SEND_TLV_SIZE 4
560 #define BTRFS_SEND_TLV_MODE 5
561 #define BTRFS_SEND_TLV_UID 6
562 #define BTRFS_SEND_TLV_GID 7
563 #define BTRFS_SEND_TLV_RDEV 8
564 #define BTRFS_SEND_TLV_CTIME 9
565 #define BTRFS_SEND_TLV_MTIME 10
566 #define BTRFS_SEND_TLV_ATIME 11
567 #define BTRFS_SEND_TLV_OTIME 12
568 #define BTRFS_SEND_TLV_XATTR_NAME 13
569 #define BTRFS_SEND_TLV_XATTR_DATA 14
570 #define BTRFS_SEND_TLV_PATH 15
571 #define BTRFS_SEND_TLV_PATH_TO 16
572 #define BTRFS_SEND_TLV_PATH_LINK 17
573 #define BTRFS_SEND_TLV_OFFSET 18
574 #define BTRFS_SEND_TLV_DATA 19
575 #define BTRFS_SEND_TLV_CLONE_UUID 20
576 #define BTRFS_SEND_TLV_CLONE_CTRANSID 21
577 #define BTRFS_SEND_TLV_CLONE_PATH 22
578 #define BTRFS_SEND_TLV_CLONE_OFFSET 23
579 #define BTRFS_SEND_TLV_CLONE_LENGTH 24
580 
581 #define BTRFS_SEND_MAGIC "btrfs-stream"
582 
583 typedef struct {
587 
588 typedef struct {
593 
594 typedef struct {
598 
599 #pragma pack(pop)
uint64_t chunk_tree_generation
Definition: btrfs.h:194
uint64_t generation
Definition: btrfs.h:346
uint64_t generation
Definition: btrfs.h:167
uint64_t fs_tree_addr
Definition: btrfs.h:197
uint64_t csum_root_addr
Definition: btrfs.h:201
uint64_t obj_id
Definition: btrfs.h:137
uint32_t version
Definition: btrfs.h:585
uint8_t type
Definition: btrfs.h:351
uint32_t limit_start
Definition: btrfs.h:502
static long backup()
Definition: maze.c:403
uint8_t log_root_level
Definition: btrfs.h:243
uint64_t root
Definition: btrfs.h:418
uint8_t obj_type
Definition: btrfs.h:138
uint8_t fs_root_level
Definition: btrfs.h:210
uint64_t type
Definition: btrfs.h:177
uint16_t sub_stripes
Definition: btrfs.h:336
uint16_t n
Definition: btrfs.h:371
uint64_t bytes_used
Definition: btrfs.h:228
Definition: btrfs.h:436
BTRFS_TIME otime
Definition: btrfs.h:296
uint32_t csum
Definition: btrfs.h:591
uint64_t convert
Definition: btrfs.h:496
uint32_t stripes_start
Definition: btrfs.h:507
uint8_t dev_root_level
Definition: btrfs.h:211
uint64_t root_tree_addr
Definition: btrfs.h:223
uint32_t count
Definition: btrfs.h:421
uint64_t bytes_used
Definition: btrfs.h:305
uint64_t dev_id
Definition: btrfs.h:340
uint64_t magic
Definition: btrfs.h:221
uint8_t root_level
Definition: btrfs.h:241
uint64_t offset
Definition: btrfs.h:407
uint64_t flags
Definition: btrfs.h:414
BTRFS_TIME otime
Definition: btrfs.h:321
uint64_t decoded_size
Definition: btrfs.h:347
uint64_t chunk_tree_addr
Definition: btrfs.h:193
uint64_t objid
Definition: btrfs.h:406
uint64_t flags
Definition: btrfs.h:150
uint64_t flags
Definition: btrfs.h:513
uint64_t length
Definition: btrfs.h:460
uint64_t otransid
Definition: btrfs.h:317
u32_t magic(void)
BTRFS_UUID parent_uuid
Definition: btrfs.h:314
uint64_t extent_tree_generation
Definition: btrfs.h:196
uint32_t count
Definition: btrfs.h:523
uint64_t root_tree_generation
Definition: btrfs.h:192
uint64_t objid
Definition: btrfs.h:420
uint64_t stripe_length
Definition: btrfs.h:330
uint64_t block_number
Definition: btrfs.h:303
uint32_t refcount
Definition: btrfs.h:391
uint32_t limit_end
Definition: btrfs.h:503
uint64_t uuid_tree_generation
Definition: btrfs.h:247
uint64_t block_group
Definition: btrfs.h:284
unsigned short int uint16_t
Definition: acefiex.h:54
uint64_t dev_root_addr
Definition: btrfs.h:199
uint16_t n
Definition: btrfs.h:452
uint64_t compat_ro_flags
Definition: btrfs.h:238
uint64_t profiles
Definition: btrfs.h:481
uint16_t csum_type
Definition: btrfs.h:240
BALANCE_ARGS data
Definition: btrfs.h:514
uint64_t used
Definition: btrfs.h:412
BTRFS_TIME st_ctime
Definition: btrfs.h:294
uint8_t encryption
Definition: btrfs.h:349
#define SYS_CHUNK_ARRAY_SIZE
Definition: btrfs.h:187
uint64_t offset
Definition: btrfs.h:139
BTRFS_TIME stime
Definition: btrfs.h:322
uint64_t chunk_tree_addr
Definition: btrfs.h:224
#define BTRFS_NUM_BACKUP_ROOTS
Definition: btrfs.h:188
uint32_t optimal_io_align
Definition: btrfs.h:174
uint64_t size
Definition: btrfs.h:438
BTRFS_UUID fs_uuid
Definition: btrfs.h:184
uint64_t generation2
Definition: btrfs.h:312
uint64_t dir
Definition: btrfs.h:450
uint64_t flags
Definition: btrfs.h:307
uint32_t dev_group
Definition: btrfs.h:180
uint64_t offset
Definition: btrfs.h:341
uint64_t generation
Definition: btrfs.h:444
uint8_t level
Definition: btrfs.h:397
uint64_t size
Definition: btrfs.h:328
uint64_t bytes_used
Definition: btrfs.h:204
uint8_t type
Definition: btrfs.h:439
uint64_t address
Definition: btrfs.h:149
uint64_t devid
Definition: btrfs.h:491
uint32_t st_gid
Definition: btrfs.h:287
uint16_t m
Definition: btrfs.h:268
uint8_t seek_speed
Definition: btrfs.h:181
uint32_t stripe_size
Definition: btrfs.h:234
uint64_t refcount
Definition: btrfs.h:380
EXTENT_ITEM extent_item
Definition: btrfs.h:395
uint64_t address
Definition: btrfs.h:356
uint64_t generation
Definition: btrfs.h:301
uint64_t vrange_end
Definition: btrfs.h:495
uint64_t sequence
Definition: btrfs.h:291
uint64_t stransid
Definition: btrfs.h:318
uint64_t num_devices
Definition: btrfs.h:230
uint32_t st_nlink
Definition: btrfs.h:285
uint64_t index
Definition: btrfs.h:451
uint64_t index
Definition: btrfs.h:370
uint64_t dev_root_generation
Definition: btrfs.h:200
r reserved
Definition: btrfs.c:2940
uint8_t drop_level
Definition: btrfs.h:310
uint64_t generation
Definition: btrfs.h:152
BTRFS_UUID received_uuid
Definition: btrfs.h:315
uint32_t num_references
Definition: btrfs.h:308
KEY key
Definition: btrfs.h:266
uint32_t count
Definition: btrfs.h:408
uint32_t offset
Definition: btrfs.h:160
uint64_t extent_tree_addr
Definition: btrfs.h:195
DEV_ITEM dev_item
Definition: btrfs.h:244
uint64_t size
Definition: btrfs.h:357
uint8_t root_level
Definition: btrfs.h:207
uint8_t type
Definition: btrfs.h:270
uint32_t size
Definition: btrfs.h:161
uint64_t usage
Definition: btrfs.h:484
uint16_t n
Definition: btrfs.h:364
BTRFS_UUID metadata_uuid
Definition: btrfs.h:248
uint64_t root
Definition: btrfs.h:405
uint32_t opt_io_alignment
Definition: btrfs.h:332
uint64_t offset
Definition: btrfs.h:401
BTRFS_TIME st_mtime
Definition: btrfs.h:295
uint64_t log_tree_addr
Definition: btrfs.h:225
uint64_t sb_phys_addr
Definition: btrfs.h:219
BTRFS_UUID device_uuid
Definition: btrfs.h:183
uint64_t flags
Definition: btrfs.h:220
uint64_t ctransid
Definition: btrfs.h:316
BTRFS_UUID chunk_tree_uuid
Definition: btrfs.h:151
uint64_t num_bytes
Definition: btrfs.h:172
uint16_t encoding
Definition: btrfs.h:350
uint64_t st_size
Definition: btrfs.h:282
uint8_t reserved2[12]
Definition: fsck.fat.h:58
uint64_t objid
Definition: btrfs.h:302
uint8_t csum_root_level
Definition: btrfs.h:212
uint32_t stripes_end
Definition: btrfs.h:508
uint64_t st_rdev
Definition: btrfs.h:289
uint64_t root_dir_objectid
Definition: btrfs.h:229
uint64_t offset
Definition: btrfs.h:437
BTRFS_UUID uuid
Definition: btrfs.h:313
KEY firstitem
Definition: btrfs.h:386
uint8_t level
Definition: btrfs.h:155
uint64_t objid
Definition: btrfs.h:458
uint8_t root_level
Definition: btrfs.h:311
uint64_t drange_end
Definition: btrfs.h:493
BTRFS_UUID dev_uuid
Definition: btrfs.h:342
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
uint64_t generation
Definition: btrfs.h:222
uint32_t length
Definition: btrfs.h:589
BTRFS_TIME st_atime
Definition: btrfs.h:293
uint8_t chunk_root_level
Definition: btrfs.h:208
uint64_t offset
Definition: btrfs.h:425
uint32_t count
Definition: btrfs.h:430
uint32_t opt_io_width
Definition: btrfs.h:333
uint32_t sector_size
Definition: btrfs.h:334
uint64_t dev_id
Definition: btrfs.h:171
uint8_t level
Definition: btrfs.h:387
uint64_t gen
Definition: btrfs.h:419
uint16_t cmd
Definition: btrfs.h:590
uint64_t cache_generation
Definition: btrfs.h:246
uint64_t flags
Definition: btrfs.h:497
uint32_t optimal_io_width
Definition: btrfs.h:175
uint32_t n
Definition: btrfs.h:235
static cab_ULONG checksum(const cab_UBYTE *data, cab_UWORD bytes, cab_ULONG csum)
Definition: fdi.c:353
KEY drop_progress
Definition: btrfs.h:309
uint64_t generation
Definition: btrfs.h:280
BYTE uint8_t
Definition: msvideo1.c:66
uint8_t label[11]
Definition: fsck.fat.h:65
uint64_t num_bytes
Definition: btrfs.h:359
uint64_t dir
Definition: btrfs.h:369
uint64_t st_blocks
Definition: btrfs.h:283
uint64_t flags
Definition: btrfs.h:290
uint64_t generation
Definition: btrfs.h:381
uint64_t csum_root_generation
Definition: btrfs.h:202
uint8_t chunk_root_level
Definition: btrfs.h:242
uint64_t root_tree_addr
Definition: btrfs.h:191
uint64_t root_id
Definition: btrfs.h:329
uint32_t usage_start
Definition: btrfs.h:486
uint64_t vrange_start
Definition: btrfs.h:494
uint64_t byte_limit
Definition: btrfs.h:304
uint64_t limit
Definition: btrfs.h:500
uint8_t bandwidth
Definition: btrfs.h:182
Definition: btrfs.h:136
BALANCE_ARGS metadata
Definition: btrfs.h:515
INODE_ITEM inode
Definition: btrfs.h:300
#define MAX_LABEL_SIZE
Definition: btrfs.h:16
UINT64 uint64_t
Definition: types.h:77
BTRFS_UUID fs_uuid
Definition: btrfs.h:148
#define KEY
Definition: profile.c:30
uint64_t seconds
Definition: btrfs.h:275
uint64_t total_bytes
Definition: btrfs.h:227
KEY key
Definition: btrfs.h:159
uint64_t index
Definition: btrfs.h:363
BTRFS_UUID uuid
Definition: btrfs.h:218
uint64_t transid
Definition: btrfs.h:281
uint32_t node_size
Definition: btrfs.h:232
uint64_t chunk_tree
Definition: btrfs.h:413
BTRFS_TIME ctime
Definition: btrfs.h:320
uint32_t nanoseconds
Definition: btrfs.h:276
uint64_t total_bytes
Definition: btrfs.h:203
uint32_t flags
Definition: btrfs.h:524
UINT32 uint32_t
Definition: types.h:75
uint64_t last_snapshot_generation
Definition: btrfs.h:306
uint64_t address
Definition: btrfs.h:166
Definition: fs.h:216
uint32_t minimal_io_size
Definition: btrfs.h:176
uint64_t num_entries
Definition: btrfs.h:445
Definition: name.c:38
static const uint64_t superblock_addrs[]
Definition: btrfs.h:13
uint16_t type
Definition: btrfs.h:595
uint64_t num_bitmaps
Definition: btrfs.h:446
BTRFS_TIME rtime
Definition: btrfs.h:323
uint64_t bytes_used
Definition: btrfs.h:173
uint16_t length
Definition: btrfs.h:596
Definition: msctf.idl:510
uint16_t num_stripes
Definition: btrfs.h:335
uint32_t num_items
Definition: btrfs.h:154
uint64_t offset
Definition: btrfs.h:358
uint8_t extent_root_level
Definition: btrfs.h:209
BALANCE_ARGS system
Definition: btrfs.h:516
uint64_t transid
Definition: btrfs.h:267
uint64_t flags
Definition: btrfs.h:382
uint32_t sector_size
Definition: btrfs.h:231
uint64_t chunktree
Definition: btrfs.h:457
BTRFS_UUID chunktree_uuid
Definition: btrfs.h:461
uint64_t compat_flags
Definition: btrfs.h:237
uint64_t type
Definition: btrfs.h:331
uint32_t leaf_size
Definition: btrfs.h:233
uint64_t chunk_root_generation
Definition: btrfs.h:236
uint32_t st_uid
Definition: btrfs.h:286
uint16_t n
Definition: btrfs.h:269
uint64_t drange_start
Definition: btrfs.h:492
uint64_t offset
Definition: btrfs.h:429
uint64_t tree_id
Definition: btrfs.h:153
uint8_t compression
Definition: btrfs.h:348
uint64_t log_root_transid
Definition: btrfs.h:226
uint64_t address
Definition: btrfs.h:459
uint64_t rtransid
Definition: btrfs.h:319
uint64_t fs_tree_generation
Definition: btrfs.h:198
uint64_t num_devices
Definition: btrfs.h:205
uint32_t st_mode
Definition: btrfs.h:288
uint64_t start_offset
Definition: btrfs.h:179
uint32_t usage_end
Definition: btrfs.h:487
uint64_t incompat_flags
Definition: btrfs.h:239
uint64_t generation
Definition: btrfs.h:178