Lines Matching +full:device +full:- +full:tree
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
20 /* holds pointers to all of the tree roots */
27 * chunk tree stores translations from logical -> physical block numbering
28 * the super block points to the chunk tree
33 * stores information about which areas of a given device are in use.
34 * one per device. The tree of tree roots points to the device tree
41 /* directory objectid inside the root tree */
56 /* device stats in the device tree */
59 /* for storing balance parameters in the root tree */
60 #define BTRFS_BALANCE_OBJECTID -4ULL
63 #define BTRFS_ORPHAN_OBJECTID -5ULL
66 #define BTRFS_TREE_LOG_OBJECTID -6ULL
67 #define BTRFS_TREE_LOG_FIXUP_OBJECTID -7ULL
70 #define BTRFS_TREE_RELOC_OBJECTID -8ULL
71 #define BTRFS_DATA_RELOC_TREE_OBJECTID -9ULL
75 * this allows them to share the logging tree
78 #define BTRFS_EXTENT_CSUM_OBJECTID -10ULL
81 #define BTRFS_FREE_SPACE_OBJECTID -11ULL
87 #define BTRFS_FREE_INO_OBJECTID -12ULL
90 #define BTRFS_MULTIPLE_OBJECTIDS -255ULL
96 #define BTRFS_LAST_FREE_OBJECTID -256ULL
101 * the device items go into the chunk tree. The key is in the form
122 /* reserve 2-15 close to the inode for later flexibility */
125 * dir items are the name -> inode pointers in a directory. There is one
138 * extent csums are stored in a separate tree and hold csums for
144 * root items point to tree roots. They are typically in the root
145 * tree used by the super block to find all the other trees
163 * extent items are in the extent map tree. These record which blocks
170 * the length, so we save the level in key->offset instead of the length.
191 * Every block group is represented in the free space tree by a free space info
232 * Records the child-parent relationship of qgroups. For
245 * The key type for tree items that are stored persistently, but do not need to
246 * exist for extended period of time. The items can exist in any tree.
252 * - balance status item
263 * The key type for tree items that are stored persistently and usually exist
265 * information, stats or preference values. The item can exist in any tree.
271 * - device statistics, store IO stats in the device tree, one key for all
278 * Persistantly stores the device replace state in the device tree.
285 * These items are part of the filesystem UUID tree.
335 * The key defines the order in the tree, and so it also defines (optimal)
364 /* the internal btrfs device id */
367 /* size of the device */
373 /* optimal io alignment for this device */
376 /* optimal io width for this device */
379 /* minimal io size for this device */
382 /* type and info about this device */
385 /* expected generation for this device */
389 * starting byte of this partition on the device,
397 /* seek speed 0-100 where 100 is fastest */
400 /* bandwidth 0-100 where 100 is fastest */
403 /* btrfs generated uuid for this device */
406 /* uuid of FS who owns this device */
495 /* following flags only apply to tree blocks */
528 * field points back to the chunk allocation mapping tree that allocated
529 * the extent. The chunk tree uuid field is a way to double check the owner
602 * Internal in-memory flag that a subvolume has been marked for deletion but
643 __le64 stransid; /* trans when sent. non-zero for received subvol */
644 __le64 rtransid; /* trans when received. non-zero for received subvol */
680 * BTRFS_BALANCE_ARGS_USAGE_RANGE - range syntax, min..max
712 * BTRFS_BALANCE_ARGS_LIMIT_RANGE - the extend version can use minimum
889 * fs_info->avail_*_alloc_bits (in-memory) and balance item fields
890 * (on-disk). The corresponding on-disk bit in chunk.type is reserved
947 * with a non-qgroup-aware version.