• Home
  • Raw
  • Download

Lines Matching refs:root

36 #define CORRUPT(reason, eb, root, slot)					\  argument
37 btrfs_crit(root->fs_info, \
40 reason, btrfs_header_bytenr(eb), root->objectid, slot)
63 static void generic_err(const struct btrfs_root *root, in generic_err() argument
75 btrfs_crit(root->fs_info, in generic_err()
78 root->objectid, btrfs_header_bytenr(eb), slot, &vaf); in generic_err()
82 static int check_extent_data_item(struct btrfs_root *root, in check_extent_data_item() argument
87 u32 sectorsize = root->fs_info->sectorsize; in check_extent_data_item()
92 leaf, root, slot); in check_extent_data_item()
99 CORRUPT("invalid file extent type", leaf, root, slot); in check_extent_data_item()
108 CORRUPT("invalid file extent compression", leaf, root, slot); in check_extent_data_item()
112 CORRUPT("invalid file extent encryption", leaf, root, slot); in check_extent_data_item()
119 leaf, root, slot); in check_extent_data_item()
132 leaf, root, slot); in check_extent_data_item()
142 leaf, root, slot); in check_extent_data_item()
152 leaf, root, slot); in check_extent_data_item()
159 static int check_csum_item(struct btrfs_root *root, struct extent_buffer *leaf, in check_csum_item() argument
162 u32 sectorsize = root->fs_info->sectorsize; in check_csum_item()
163 u32 csumsize = btrfs_super_csum_size(root->fs_info->super_copy); in check_csum_item()
166 CORRUPT("invalid objectid for csum item", leaf, root, slot); in check_csum_item()
170 CORRUPT("unaligned key offset for csum item", leaf, root, slot); in check_csum_item()
174 CORRUPT("unaligned csum item size", leaf, root, slot); in check_csum_item()
185 static void dir_item_err(const struct btrfs_root *root, in dir_item_err() argument
199 btrfs_crit(root->fs_info, in dir_item_err()
201 btrfs_header_level(eb) == 0 ? "leaf" : "node", root->objectid, in dir_item_err()
206 static int check_dir_item(struct btrfs_root *root, in check_dir_item() argument
225 dir_item_err(root, leaf, slot, in check_dir_item()
234 dir_item_err(root, leaf, slot, in check_dir_item()
242 dir_item_err(root, leaf, slot, in check_dir_item()
249 dir_item_err(root, leaf, slot, in check_dir_item()
262 dir_item_err(root, leaf, slot, in check_dir_item()
267 if (name_len + data_len > BTRFS_MAX_XATTR_SIZE(root->fs_info)) { in check_dir_item()
268 dir_item_err(root, leaf, slot, in check_dir_item()
271 BTRFS_MAX_XATTR_SIZE(root->fs_info)); in check_dir_item()
276 dir_item_err(root, leaf, slot, in check_dir_item()
286 dir_item_err(root, leaf, slot, in check_dir_item()
304 dir_item_err(root, leaf, slot, in check_dir_item()
413 static int check_leaf_item(struct btrfs_root *root, in check_leaf_item() argument
421 ret = check_extent_data_item(root, leaf, key, slot); in check_leaf_item()
424 ret = check_csum_item(root, leaf, key, slot); in check_leaf_item()
429 ret = check_dir_item(root, leaf, key, slot); in check_leaf_item()
432 ret = check_block_group_item(root->fs_info, leaf, key, slot); in check_leaf_item()
438 static int check_leaf(struct btrfs_root *root, struct extent_buffer *leaf, in check_leaf() argument
441 struct btrfs_fs_info *fs_info = root->fs_info; in check_leaf()
449 generic_err(root, leaf, 0, in check_leaf()
474 generic_err(root, leaf, 0, in check_leaf()
526 CORRUPT("bad key order", leaf, root, slot); in check_leaf()
541 CORRUPT("slot offset bad", leaf, root, slot); in check_leaf()
552 CORRUPT("slot end outside of leaf", leaf, root, slot); in check_leaf()
559 CORRUPT("slot overlap with its data", leaf, root, slot); in check_leaf()
568 ret = check_leaf_item(root, leaf, &key, slot); in check_leaf()
581 int btrfs_check_leaf_full(struct btrfs_root *root, struct extent_buffer *leaf) in btrfs_check_leaf_full() argument
583 return check_leaf(root, leaf, true); in btrfs_check_leaf_full()
586 int btrfs_check_leaf_relaxed(struct btrfs_root *root, in btrfs_check_leaf_relaxed() argument
589 return check_leaf(root, leaf, false); in btrfs_check_leaf_relaxed()
592 int btrfs_check_node(struct btrfs_root *root, struct extent_buffer *node) in btrfs_check_node() argument
602 generic_err(root, node, 0, in btrfs_check_node()
607 if (nr == 0 || nr > BTRFS_NODEPTRS_PER_BLOCK(root->fs_info)) { in btrfs_check_node()
608 btrfs_crit(root->fs_info, in btrfs_check_node()
610 root->objectid, node->start, in btrfs_check_node()
612 BTRFS_NODEPTRS_PER_BLOCK(root->fs_info)); in btrfs_check_node()
622 generic_err(root, node, slot, in btrfs_check_node()
627 if (!IS_ALIGNED(bytenr, root->fs_info->sectorsize)) { in btrfs_check_node()
628 generic_err(root, node, slot, in btrfs_check_node()
630 bytenr, root->fs_info->sectorsize); in btrfs_check_node()
636 generic_err(root, node, slot, in btrfs_check_node()