Lines Matching defs:tree
8 #include <linux/radix-tree.h>
27 #include "print-tree.h"
29 #include "tree-log.h"
31 #include "free-space-tree.h"
39 #include "tree-checker.h"
48 #include "extent-tree.h"
49 #include "root-tree.h"
51 #include "uuid-tree.h"
192 * helper to read a given tree block, doing retries as required when
195 * @check: expected tree parentness check, see the comments of the
241 * Checksum a dirty tree block before IO.
298 btrfs_err(fs_info, "block=%llu write time tree block corruption detected",
301 * Be noisy if this is an extent buffer from a log tree. We don't abort
302 * a transaction in case there's a bad log tree extent buffer, we just
304 * a bad log tree extent buffer, as that may signal a bug somewhere.
352 "bad tree block start, mirror %u want %llu have %llu",
366 "bad tree block level, mirror %u level %d on logical %llu",
413 "tree first key mismatch detected, bytenr=%llu parent_transid=%llu key expected=(%llu,%u,%llu) has=(%llu,%u,%llu)",
444 "read time tree block corruption detected on logical %llu mirror %u",
506 struct extent_io_tree *tree;
507 tree = &BTRFS_I(folio->mapping->host)->io_tree;
508 extent_invalidate_folio(tree, folio, offset);
589 * Read tree block at logical address @bytenr and do variant basic but critical
592 * @check: expected tree parentness check, see comments of the
935 * counts still get updated (along with back refs to the log tree).
1062 "root=%llu block=%llu, tree root owner mismatch, have %llu expect %llu",
1274 * For essential trees like root/extent tree, we grab it from fs_info directly.
1306 * This is namely for free-space-tree and quota tree, which can change
1389 * @objectid: tree objectid
1390 * @check_ref: if set, verify that the tree exists and the item has at least
1403 * @objectid: tree objectid
1422 * read the tree root commit root and look up the fs root from there. This is a
1423 * temporary root, it will not be inserted into the radix tree as it doesn't
1803 /* helper to cleanup tree roots */
2069 btrfs_warn(fs_info, "failed to read log tree");
2076 btrfs_err(fs_info, "failed to read log tree");
2085 "Failed to recover log tree");
2142 * Just worry about this for extent tree, it'll be the same for
2255 * This tree can share blocks with some other fs tree during relocation
2417 * Artificial requirement for block-group-tree to force newer features
2418 * (free-space-tree, no-holes) so the test matrix is smaller.
2424 "block-group-tree feature requires fres-space-tree and no-holes");
2578 btrfs_warn(fs_info, "couldn't read tree root");
2844 * 1st step is to iterate through the existing UUID tree and
2846 * 2nd step is to add all missing entries to the UUID tree.
2951 btrfs_warn(fs_info, "free space tree is invalid");
2956 btrfs_info(fs_info, "rebuilding free space tree");
2960 "failed to rebuild free space tree: %d", ret);
2967 btrfs_info(fs_info, "disabling free space tree");
2971 "failed to disable free space tree: %d", ret);
2979 * them into the fs_info->fs_roots_radix tree. This must be done before
2980 * calling btrfs_orphan_cleanup() on the tree root. If we don't do it
2982 * item before the root's tree is deleted - this means that if we unmount
2984 * delete what remains of the tree because the orphan item does not
3013 btrfs_info(fs_info, "creating free space tree");
3017 "failed to create free space tree: %d", ret);
3041 btrfs_info(fs_info, "creating UUID tree");
3045 "failed to create the UUID tree %d", ret);
3066 * (space cache related) can modify on-disk format like free space tree and
3129 * Artificial limitations for block group tree, to force
3130 * block-group-tree to rely on no-holes and free-space-tree.
3136 "block-group-tree feature requires no-holes and free-space-tree features");
3272 btrfs_err(fs_info, "invalid superblock tree root bytenr");
3320 "forcing free space tree for sector size %u with page size %lu",
3369 btrfs_err(fs_info, "failed to read chunk tree: %d", ret);
3408 * uuid generation, and then if we crash we would rescan the uuid tree,
3539 btrfs_err(fs_info, "couldn't build ref tree");
3544 btrfs_info(fs_info, "start tree-log replay");
3553 btrfs_warn(fs_info, "failed to read fs tree: %d", ret);
3571 btrfs_info(fs_info, "checking UUID tree");
3575 "failed to check the UUID tree: %d", ret);
4074 * not from fsync where the tree roots in fs_info have not
4170 /* Drop a fs root from the radix tree and free it. */
4418 * have had an IO error and have left over tree log blocks that aren't