Lines Matching refs:eb
293 int (*process_func)(struct btrfs_root *log, struct extent_buffer *eb,
301 struct extent_buffer *eb, in process_one_buffer() argument
312 ret = btrfs_read_buffer(eb, gen, level, NULL); in process_one_buffer()
318 ret = btrfs_pin_extent_for_log_replay(fs_info, eb->start, in process_one_buffer()
319 eb->len); in process_one_buffer()
321 if (!ret && btrfs_buffer_uptodate(eb, gen, 0)) { in process_one_buffer()
322 if (wc->pin && btrfs_header_level(eb) == 0) in process_one_buffer()
323 ret = btrfs_exclude_logged_extents(eb); in process_one_buffer()
325 btrfs_write_tree_block(eb); in process_one_buffer()
327 btrfs_wait_tree_block_writeback(eb); in process_one_buffer()
349 struct extent_buffer *eb, int slot, in overwrite_item() argument
364 item_size = btrfs_item_size_nr(eb, slot); in overwrite_item()
365 src_ptr = btrfs_item_ptr_offset(eb, slot); in overwrite_item()
393 read_extent_buffer(eb, src_copy, src_ptr, item_size); in overwrite_item()
425 item = btrfs_item_ptr(eb, slot, in overwrite_item()
427 btrfs_set_inode_nbytes(eb, item, nbytes); in overwrite_item()
434 mode = btrfs_inode_mode(eb, item); in overwrite_item()
436 btrfs_set_inode_size(eb, item, 0); in overwrite_item()
446 item = btrfs_item_ptr(eb, slot, struct btrfs_inode_item); in overwrite_item()
447 btrfs_set_inode_nbytes(eb, item, 0); in overwrite_item()
454 mode = btrfs_inode_mode(eb, item); in overwrite_item()
456 btrfs_set_inode_size(eb, item, 0); in overwrite_item()
497 if (btrfs_inode_generation(eb, src_item) == 0) { in overwrite_item()
499 const u64 ino_size = btrfs_inode_size(eb, src_item); in overwrite_item()
508 if (S_ISREG(btrfs_inode_mode(eb, src_item)) && in overwrite_item()
521 S_ISDIR(btrfs_inode_mode(eb, src_item)) && in overwrite_item()
529 copy_extent_buffer(path->nodes[0], eb, dst_ptr, in overwrite_item()
587 struct extent_buffer *eb, int slot, in replay_one_extent() argument
600 item = btrfs_item_ptr(eb, slot, struct btrfs_file_extent_item); in replay_one_extent()
601 found_type = btrfs_file_extent_type(eb, item); in replay_one_extent()
605 nbytes = btrfs_file_extent_num_bytes(eb, item); in replay_one_extent()
612 if (btrfs_file_extent_disk_bytenr(eb, item) == 0) in replay_one_extent()
615 size = btrfs_file_extent_ram_bytes(eb, item); in replay_one_extent()
616 nbytes = btrfs_file_extent_ram_bytes(eb, item); in replay_one_extent()
650 read_extent_buffer(eb, &cmp1, (unsigned long)item, in replay_one_extent()
677 if (btrfs_file_extent_disk_bytenr(eb, item) == 0 && in replay_one_extent()
687 copy_extent_buffer(path->nodes[0], eb, dest_offset, in replay_one_extent()
690 ins.objectid = btrfs_file_extent_disk_bytenr(eb, item); in replay_one_extent()
691 ins.offset = btrfs_file_extent_disk_num_bytes(eb, item); in replay_one_extent()
693 offset = key->offset - btrfs_file_extent_offset(eb, item); in replay_one_extent()
704 btrfs_file_extent_disk_bytenr(eb, item), in replay_one_extent()
705 btrfs_file_extent_disk_num_bytes(eb, item), in replay_one_extent()
747 if (btrfs_file_extent_compression(eb, item)) { in replay_one_extent()
752 btrfs_file_extent_offset(eb, item); in replay_one_extent()
754 btrfs_file_extent_num_bytes(eb, item); in replay_one_extent()
834 ret = overwrite_item(trans, root, path, eb, slot, key); in replay_one_extent()
1196 static int extref_get_fields(struct extent_buffer *eb, unsigned long ref_ptr, in extref_get_fields() argument
1204 *namelen = btrfs_inode_extref_name_len(eb, extref); in extref_get_fields()
1209 read_extent_buffer(eb, *name, (unsigned long)&extref->name, in extref_get_fields()
1213 *index = btrfs_inode_extref_index(eb, extref); in extref_get_fields()
1215 *parent_objectid = btrfs_inode_extref_parent(eb, extref); in extref_get_fields()
1220 static int ref_get_fields(struct extent_buffer *eb, unsigned long ref_ptr, in ref_get_fields() argument
1227 *namelen = btrfs_inode_ref_name_len(eb, ref); in ref_get_fields()
1232 read_extent_buffer(eb, *name, (unsigned long)(ref + 1), *namelen); in ref_get_fields()
1235 *index = btrfs_inode_ref_index(eb, ref); in ref_get_fields()
1258 struct extent_buffer *eb; in unlink_old_inode_refs() local
1270 eb = path->nodes[0]; in unlink_old_inode_refs()
1271 ref_ptr = btrfs_item_ptr_offset(eb, path->slots[0]); in unlink_old_inode_refs()
1272 ref_end = ref_ptr + btrfs_item_size_nr(eb, path->slots[0]); in unlink_old_inode_refs()
1279 ret = extref_get_fields(eb, ref_ptr, &namelen, &name, in unlink_old_inode_refs()
1283 ret = ref_get_fields(eb, ref_ptr, &namelen, &name, in unlink_old_inode_refs()
1448 struct extent_buffer *eb, int slot, in add_inode_ref() argument
1465 ref_ptr = btrfs_item_ptr_offset(eb, slot); in add_inode_ref()
1466 ref_end = ref_ptr + btrfs_item_size_nr(eb, slot); in add_inode_ref()
1474 parent_objectid = btrfs_inode_extref_parent(eb, r); in add_inode_ref()
1501 ret = extref_get_fields(eb, ref_ptr, &namelen, &name, in add_inode_ref()
1514 ret = ref_get_fields(eb, ref_ptr, &namelen, &name, in add_inode_ref()
1611 ret = unlink_old_inode_refs(trans, root, path, BTRFS_I(inode), eb, slot, in add_inode_ref()
1617 ret = overwrite_item(trans, root, path, eb, slot, key); in add_inode_ref()
1970 struct extent_buffer *eb, in replay_one_name() argument
1990 name_len = btrfs_dir_name_len(eb, di); in replay_one_name()
1997 log_type = btrfs_dir_type(eb, di); in replay_one_name()
1998 read_extent_buffer(eb, name, (unsigned long)(di + 1), in replay_one_name()
2001 btrfs_dir_item_key_to_cpu(eb, di, &log_key); in replay_one_name()
2099 struct extent_buffer *eb, int slot, in replay_one_dir_item() argument
2103 u32 item_size = btrfs_item_size_nr(eb, slot); in replay_one_dir_item()
2110 ptr = btrfs_item_ptr_offset(eb, slot); in replay_one_dir_item()
2114 name_len = btrfs_dir_name_len(eb, di); in replay_one_dir_item()
2115 ret = replay_one_name(trans, root, path, eb, di, key); in replay_one_dir_item()
2148 if (ret == 1 && btrfs_dir_type(eb, di) != BTRFS_FT_DIR) { in replay_one_dir_item()
2159 btrfs_dir_item_key_to_cpu(eb, di, &di_key); in replay_one_dir_item()
2267 struct extent_buffer *eb; in check_item_in_log() local
2280 eb = path->nodes[0]; in check_item_in_log()
2282 item_size = btrfs_item_size_nr(eb, slot); in check_item_in_log()
2283 ptr = btrfs_item_ptr_offset(eb, slot); in check_item_in_log()
2287 name_len = btrfs_dir_name_len(eb, di); in check_item_in_log()
2293 read_extent_buffer(eb, name, (unsigned long)(di + 1), in check_item_in_log()
2308 btrfs_dir_item_key_to_cpu(eb, di, &location); in check_item_in_log()
2580 static int replay_one_buffer(struct btrfs_root *log, struct extent_buffer *eb, in replay_one_buffer() argument
2590 ret = btrfs_read_buffer(eb, gen, level, NULL); in replay_one_buffer()
2594 level = btrfs_header_level(eb); in replay_one_buffer()
2603 nritems = btrfs_header_nritems(eb); in replay_one_buffer()
2605 btrfs_item_key_to_cpu(eb, &key, i); in replay_one_buffer()
2613 inode_item = btrfs_item_ptr(eb, i, in replay_one_buffer()
2623 if (btrfs_inode_nlink(eb, inode_item) == 0) { in replay_one_buffer()
2633 mode = btrfs_inode_mode(eb, inode_item); in replay_one_buffer()
2641 eb, i, &key); in replay_one_buffer()
2688 eb, i, &key); in replay_one_buffer()
2699 eb, i, &key); in replay_one_buffer()
2705 eb, i, &key); in replay_one_buffer()
2711 eb, i, &key); in replay_one_buffer()
2716 eb, i, &key); in replay_one_buffer()
4772 static int btrfs_check_ref_name_override(struct extent_buffer *eb, in btrfs_check_ref_name_override() argument
4782 u32 item_size = btrfs_item_size_nr(eb, slot); in btrfs_check_ref_name_override()
4784 unsigned long ptr = btrfs_item_ptr_offset(eb, slot); in btrfs_check_ref_name_override()
4804 this_name_len = btrfs_inode_ref_name_len(eb, iref); in btrfs_check_ref_name_override()
4812 parent = btrfs_inode_extref_parent(eb, extref); in btrfs_check_ref_name_override()
4813 this_name_len = btrfs_inode_extref_name_len(eb, extref); in btrfs_check_ref_name_override()
4830 read_extent_buffer(eb, name, name_ptr, this_name_len); in btrfs_check_ref_name_override()