Lines Matching refs:eb

37 			      const struct extent_buffer *eb,  in check_extent_in_eb()  argument
41 const u64 data_len = btrfs_file_extent_num_bytes(eb, fi); in check_extent_in_eb()
49 !btrfs_file_extent_compression(eb, fi) && in check_extent_in_eb()
50 !btrfs_file_extent_encryption(eb, fi) && in check_extent_in_eb()
51 !btrfs_file_extent_other_encoding(eb, fi)) { in check_extent_in_eb()
54 data_offset = btrfs_file_extent_offset(eb, fi); in check_extent_in_eb()
65 cached = ctx->cache_lookup(eb->start, ctx->user_ctx, &root_ids, in check_extent_in_eb()
105 const struct extent_buffer *eb, in find_extent_in_eb() argument
121 nritems = btrfs_header_nritems(eb); in find_extent_in_eb()
123 btrfs_item_key_to_cpu(eb, &key, slot); in find_extent_in_eb()
126 fi = btrfs_item_ptr(eb, slot, struct btrfs_file_extent_item); in find_extent_in_eb()
127 extent_type = btrfs_file_extent_type(eb, fi); in find_extent_in_eb()
131 disk_byte = btrfs_file_extent_disk_bytenr(eb, fi); in find_extent_in_eb()
135 ret = check_extent_in_eb(ctx, &key, eb, fi, eie); in find_extent_in_eb()
479 struct extent_buffer *eb; in add_all_parents() local
491 eb = path->nodes[level]; in add_all_parents()
492 ret = ulist_add(parents, eb->start, 0, GFP_NOFS); in add_all_parents()
508 eb = path->nodes[0]; in add_all_parents()
509 if (path->slots[0] >= btrfs_header_nritems(eb) || in add_all_parents()
510 is_shared_data_backref(preftrees, eb->start) || in add_all_parents()
511 ref->root_id != btrfs_header_owner(eb)) { in add_all_parents()
519 eb = path->nodes[0]; in add_all_parents()
522 btrfs_item_key_to_cpu(eb, &key, slot); in add_all_parents()
534 (is_shared_data_backref(preftrees, eb->start) || in add_all_parents()
535 ref->root_id != btrfs_header_owner(eb))) { in add_all_parents()
542 fi = btrfs_item_ptr(eb, slot, struct btrfs_file_extent_item); in add_all_parents()
543 type = btrfs_file_extent_type(eb, fi); in add_all_parents()
546 disk_byte = btrfs_file_extent_disk_bytenr(eb, fi); in add_all_parents()
547 data_offset = btrfs_file_extent_offset(eb, fi); in add_all_parents()
557 ret = check_extent_in_eb(ctx, &key, eb, fi, &eie); in add_all_parents()
564 ret = ulist_add_merge_ptr(parents, eb->start, in add_all_parents()
600 struct extent_buffer *eb; in resolve_indirect_ref() local
680 eb = path->nodes[level]; in resolve_indirect_ref()
681 while (!eb) { in resolve_indirect_ref()
687 eb = path->nodes[level]; in resolve_indirect_ref()
844 struct extent_buffer *eb; in add_missing_keys() local
861 eb = read_tree_block(fs_info, ref->wanted_disk_byte, &check); in add_missing_keys()
862 if (IS_ERR(eb)) { in add_missing_keys()
864 return PTR_ERR(eb); in add_missing_keys()
866 if (!extent_buffer_uptodate(eb)) { in add_missing_keys()
868 free_extent_buffer(eb); in add_missing_keys()
873 btrfs_tree_read_lock(eb); in add_missing_keys()
874 if (btrfs_header_level(eb) == 0) in add_missing_keys()
875 btrfs_item_key_to_cpu(eb, &ref->key_for_search, 0); in add_missing_keys()
877 btrfs_node_key_to_cpu(eb, &ref->key_for_search, 0); in add_missing_keys()
879 btrfs_tree_read_unlock(eb); in add_missing_keys()
880 free_extent_buffer(eb); in add_missing_keys()
1613 struct extent_buffer *eb; in find_parent_nodes() local
1617 eb = read_tree_block(ctx->fs_info, ref->parent, in find_parent_nodes()
1619 if (IS_ERR(eb)) { in find_parent_nodes()
1620 ret = PTR_ERR(eb); in find_parent_nodes()
1623 if (!extent_buffer_uptodate(eb)) { in find_parent_nodes()
1624 free_extent_buffer(eb); in find_parent_nodes()
1630 btrfs_tree_read_lock(eb); in find_parent_nodes()
1631 ret = find_extent_in_eb(ctx, eb, &eie); in find_parent_nodes()
1633 btrfs_tree_read_unlock(eb); in find_parent_nodes()
1634 free_extent_buffer(eb); in find_parent_nodes()
2140 struct extent_buffer *eb = eb_in; in btrfs_ref_to_path() local
2150 read_extent_buffer(eb, dest + bytes_left, in btrfs_ref_to_path()
2152 if (eb != eb_in) { in btrfs_ref_to_path()
2154 btrfs_tree_read_unlock(eb); in btrfs_ref_to_path()
2155 free_extent_buffer(eb); in btrfs_ref_to_path()
2171 eb = path->nodes[0]; in btrfs_ref_to_path()
2173 if (eb != eb_in) { in btrfs_ref_to_path()
2178 iref = btrfs_item_ptr(eb, slot, struct btrfs_inode_ref); in btrfs_ref_to_path()
2180 name_len = btrfs_inode_ref_name_len(eb, iref); in btrfs_ref_to_path()
2211 const struct extent_buffer *eb; in extent_from_logical() local
2245 eb = path->nodes[0]; in extent_from_logical()
2246 item_size = btrfs_item_size(eb, path->slots[0]); in extent_from_logical()
2249 ei = btrfs_item_ptr(eb, path->slots[0], struct btrfs_extent_item); in extent_from_logical()
2250 flags = btrfs_extent_flags(eb, ei); in extent_from_logical()
2280 const struct extent_buffer *eb, in get_extent_inline_ref() argument
2293 flags = btrfs_extent_flags(eb, ei); in get_extent_inline_ref()
2315 *out_type = btrfs_get_extent_inline_ref_type(eb, *out_eiref, in get_extent_inline_ref()
2335 int tree_backref_for_extent(unsigned long *ptr, struct extent_buffer *eb, in tree_backref_for_extent() argument
2347 ret = get_extent_inline_ref(ptr, eb, key, ei, item_size, in tree_backref_for_extent()
2361 *out_root = btrfs_extent_inline_ref_offset(eb, eiref); in tree_backref_for_extent()
2367 *out_level = btrfs_tree_block_level(eb, info); in tree_backref_for_extent()
2579 struct extent_buffer *eb, struct inode_fs_paths *ipath);
2592 struct extent_buffer *eb; in iterate_inode_refs() local
2611 eb = btrfs_clone_extent_buffer(path->nodes[0]); in iterate_inode_refs()
2612 if (!eb) { in iterate_inode_refs()
2618 iref = btrfs_item_ptr(eb, slot, struct btrfs_inode_ref); in iterate_inode_refs()
2620 for (cur = 0; cur < btrfs_item_size(eb, slot); cur += len) { in iterate_inode_refs()
2621 name_len = btrfs_inode_ref_name_len(eb, iref); in iterate_inode_refs()
2628 (unsigned long)(iref + 1), eb, ipath); in iterate_inode_refs()
2634 free_extent_buffer(eb); in iterate_inode_refs()
2651 struct extent_buffer *eb; in iterate_inode_extrefs() local
2669 eb = btrfs_clone_extent_buffer(path->nodes[0]); in iterate_inode_extrefs()
2670 if (!eb) { in iterate_inode_extrefs()
2676 item_size = btrfs_item_size(eb, slot); in iterate_inode_extrefs()
2677 ptr = btrfs_item_ptr_offset(eb, slot); in iterate_inode_extrefs()
2684 parent = btrfs_inode_extref_parent(eb, extref); in iterate_inode_extrefs()
2685 name_len = btrfs_inode_extref_name_len(eb, extref); in iterate_inode_extrefs()
2687 (unsigned long)&extref->name, eb, ipath); in iterate_inode_extrefs()
2691 cur_offset += btrfs_inode_extref_name_len(eb, extref); in iterate_inode_extrefs()
2694 free_extent_buffer(eb); in iterate_inode_extrefs()
2709 struct extent_buffer *eb, struct inode_fs_paths *ipath) in inode_to_path() argument
2722 name_off, eb, inum, fspath_min, bytes_left); in inode_to_path()
2944 struct extent_buffer *eb = btrfs_backref_get_eb(iter); in btrfs_backref_iter_next() local
2964 type = btrfs_extent_inline_ref_type(eb, iref); in btrfs_backref_iter_next()
3210 struct extent_buffer *eb; in handle_indirect_tree_backref() local
3260 eb = path->nodes[level]; in handle_indirect_tree_backref()
3261 if (btrfs_node_blockptr(eb, path->slots[level]) != cur->bytenr) { in handle_indirect_tree_backref()
3295 eb = path->nodes[level]; in handle_indirect_tree_backref()
3296 rb_node = rb_simple_search(&cache->rb_root, eb->start); in handle_indirect_tree_backref()
3298 upper = btrfs_backref_alloc_node(cache, eb->start, in handle_indirect_tree_backref()
3306 upper->owner = btrfs_header_owner(eb); in handle_indirect_tree_backref()
3314 if (btrfs_block_can_be_shared(trans, root, eb)) in handle_indirect_tree_backref()
3339 upper->owner = btrfs_header_owner(eb); in handle_indirect_tree_backref()
3417 struct extent_buffer *eb; in btrfs_backref_add_tree_node() local
3422 eb = btrfs_backref_get_eb(iter); in btrfs_backref_add_tree_node()
3431 type = btrfs_get_extent_inline_ref_type(eb, iref, in btrfs_backref_add_tree_node()
3438 key.offset = btrfs_extent_inline_ref_offset(eb, iref); in btrfs_backref_add_tree_node()