Lines Matching refs:eb
317 int (*process_func)(struct btrfs_root *log, struct extent_buffer *eb,
325 struct extent_buffer *eb, in process_one_buffer() argument
336 ret = btrfs_read_extent_buffer(eb, gen, level, NULL); in process_one_buffer()
342 ret = btrfs_pin_extent_for_log_replay(wc->trans, eb->start, in process_one_buffer()
343 eb->len); in process_one_buffer()
347 if (btrfs_buffer_uptodate(eb, gen, 0) && in process_one_buffer()
348 btrfs_header_level(eb) == 0) in process_one_buffer()
349 ret = btrfs_exclude_logged_extents(eb); in process_one_buffer()
357 struct extent_buffer *eb, int slot, in do_overwrite_item() argument
372 item_size = btrfs_item_size(eb, slot); in do_overwrite_item()
373 src_ptr = btrfs_item_ptr_offset(eb, slot); in do_overwrite_item()
413 read_extent_buffer(eb, src_copy, src_ptr, item_size); in do_overwrite_item()
445 item = btrfs_item_ptr(eb, slot, in do_overwrite_item()
447 btrfs_set_inode_nbytes(eb, item, nbytes); in do_overwrite_item()
454 mode = btrfs_inode_mode(eb, item); in do_overwrite_item()
456 btrfs_set_inode_size(eb, item, 0); in do_overwrite_item()
466 item = btrfs_item_ptr(eb, slot, struct btrfs_inode_item); in do_overwrite_item()
467 btrfs_set_inode_nbytes(eb, item, 0); in do_overwrite_item()
474 mode = btrfs_inode_mode(eb, item); in do_overwrite_item()
476 btrfs_set_inode_size(eb, item, 0); in do_overwrite_item()
517 if (btrfs_inode_generation(eb, src_item) == 0) { in do_overwrite_item()
519 const u64 ino_size = btrfs_inode_size(eb, src_item); in do_overwrite_item()
528 if (S_ISREG(btrfs_inode_mode(eb, src_item)) && in do_overwrite_item()
536 S_ISDIR(btrfs_inode_mode(eb, src_item)) && in do_overwrite_item()
544 copy_extent_buffer(path->nodes[0], eb, dst_ptr, in do_overwrite_item()
585 struct extent_buffer *eb, int slot, in overwrite_item() argument
595 return do_overwrite_item(trans, root, path, eb, slot, key); in overwrite_item()
598 static int read_alloc_one_name(struct extent_buffer *eb, void *start, int len, in read_alloc_one_name() argument
607 read_extent_buffer(eb, buf, (unsigned long)start, len); in read_alloc_one_name()
643 struct extent_buffer *eb, int slot, in replay_one_extent() argument
657 item = btrfs_item_ptr(eb, slot, struct btrfs_file_extent_item); in replay_one_extent()
658 found_type = btrfs_file_extent_type(eb, item); in replay_one_extent()
662 nbytes = btrfs_file_extent_num_bytes(eb, item); in replay_one_extent()
669 if (btrfs_file_extent_disk_bytenr(eb, item) == 0) in replay_one_extent()
672 size = btrfs_file_extent_ram_bytes(eb, item); in replay_one_extent()
673 nbytes = btrfs_file_extent_ram_bytes(eb, item); in replay_one_extent()
707 read_extent_buffer(eb, &cmp1, (unsigned long)item, in replay_one_extent()
737 if (btrfs_file_extent_disk_bytenr(eb, item) == 0 && in replay_one_extent()
747 copy_extent_buffer(path->nodes[0], eb, dest_offset, in replay_one_extent()
750 ins.objectid = btrfs_file_extent_disk_bytenr(eb, item); in replay_one_extent()
751 ins.offset = btrfs_file_extent_disk_num_bytes(eb, item); in replay_one_extent()
753 offset = key->offset - btrfs_file_extent_offset(eb, item); in replay_one_extent()
764 btrfs_file_extent_disk_bytenr(eb, item), in replay_one_extent()
765 btrfs_file_extent_disk_num_bytes(eb, item), in replay_one_extent()
807 if (btrfs_file_extent_compression(eb, item)) { in replay_one_extent()
812 btrfs_file_extent_offset(eb, item); in replay_one_extent()
814 btrfs_file_extent_num_bytes(eb, item); in replay_one_extent()
898 ret = overwrite_item(trans, root, path, eb, slot, key); in replay_one_extent()
1232 static int extref_get_fields(struct extent_buffer *eb, unsigned long ref_ptr, in extref_get_fields() argument
1241 ret = read_alloc_one_name(eb, &extref->name, in extref_get_fields()
1242 btrfs_inode_extref_name_len(eb, extref), name); in extref_get_fields()
1247 *index = btrfs_inode_extref_index(eb, extref); in extref_get_fields()
1249 *parent_objectid = btrfs_inode_extref_parent(eb, extref); in extref_get_fields()
1254 static int ref_get_fields(struct extent_buffer *eb, unsigned long ref_ptr, in ref_get_fields() argument
1262 ret = read_alloc_one_name(eb, ref + 1, btrfs_inode_ref_name_len(eb, ref), in ref_get_fields()
1268 *index = btrfs_inode_ref_index(eb, ref); in ref_get_fields()
1291 struct extent_buffer *eb; in unlink_old_inode_refs() local
1303 eb = path->nodes[0]; in unlink_old_inode_refs()
1304 ref_ptr = btrfs_item_ptr_offset(eb, path->slots[0]); in unlink_old_inode_refs()
1305 ref_end = ref_ptr + btrfs_item_size(eb, path->slots[0]); in unlink_old_inode_refs()
1311 ret = extref_get_fields(eb, ref_ptr, &name, in unlink_old_inode_refs()
1315 ret = ref_get_fields(eb, ref_ptr, &name, NULL); in unlink_old_inode_refs()
1368 struct extent_buffer *eb, int slot, in add_inode_ref() argument
1383 ref_ptr = btrfs_item_ptr_offset(eb, slot); in add_inode_ref()
1384 ref_end = ref_ptr + btrfs_item_size(eb, slot); in add_inode_ref()
1392 parent_objectid = btrfs_inode_extref_parent(eb, r); in add_inode_ref()
1419 ret = extref_get_fields(eb, ref_ptr, &name, in add_inode_ref()
1432 ret = ref_get_fields(eb, ref_ptr, &name, &ref_index); in add_inode_ref()
1488 ret = unlink_old_inode_refs(trans, root, path, BTRFS_I(inode), eb, slot, in add_inode_ref()
1494 ret = overwrite_item(trans, root, path, eb, slot, key); in add_inode_ref()
1843 struct extent_buffer *eb, in replay_one_name() argument
1865 ret = read_alloc_one_name(eb, di + 1, btrfs_dir_name_len(eb, di), &name); in replay_one_name()
1869 log_type = btrfs_dir_type(eb, di); in replay_one_name()
1870 btrfs_dir_item_key_to_cpu(eb, di, &log_key); in replay_one_name()
1972 struct extent_buffer *eb, int slot, in replay_one_dir_item() argument
1981 di = btrfs_item_ptr(eb, slot, struct btrfs_dir_item); in replay_one_dir_item()
1982 ret = replay_one_name(trans, root, path, eb, di, key); in replay_one_dir_item()
2012 if (ret == 1 && btrfs_dir_type(eb, di) != BTRFS_FT_DIR) { in replay_one_dir_item()
2020 btrfs_dir_item_key_to_cpu(eb, di, &di_key); in replay_one_dir_item()
2124 struct extent_buffer *eb; in check_item_in_log() local
2139 eb = path->nodes[0]; in check_item_in_log()
2141 di = btrfs_item_ptr(eb, slot, struct btrfs_dir_item); in check_item_in_log()
2142 ret = read_alloc_one_name(eb, di + 1, btrfs_dir_name_len(eb, di), &name); in check_item_in_log()
2162 btrfs_dir_item_key_to_cpu(eb, di, &location); in check_item_in_log()
2403 static int replay_one_buffer(struct btrfs_root *log, struct extent_buffer *eb, in replay_one_buffer() argument
2413 ret = btrfs_read_extent_buffer(eb, gen, level, NULL); in replay_one_buffer()
2417 level = btrfs_header_level(eb); in replay_one_buffer()
2426 nritems = btrfs_header_nritems(eb); in replay_one_buffer()
2428 btrfs_item_key_to_cpu(eb, &key, i); in replay_one_buffer()
2436 inode_item = btrfs_item_ptr(eb, i, in replay_one_buffer()
2446 if (btrfs_inode_nlink(eb, inode_item) == 0) { in replay_one_buffer()
2456 mode = btrfs_inode_mode(eb, inode_item); in replay_one_buffer()
2464 eb, i, &key); in replay_one_buffer()
2518 eb, i, &key); in replay_one_buffer()
2529 eb, i, &key); in replay_one_buffer()
2535 eb, i, &key); in replay_one_buffer()
2541 eb, i, &key); in replay_one_buffer()
5244 static int btrfs_check_ref_name_override(struct extent_buffer *eb, in btrfs_check_ref_name_override() argument
5254 u32 item_size = btrfs_item_size(eb, slot); in btrfs_check_ref_name_override()
5256 unsigned long ptr = btrfs_item_ptr_offset(eb, slot); in btrfs_check_ref_name_override()
5277 this_name_len = btrfs_inode_ref_name_len(eb, iref); in btrfs_check_ref_name_override()
5285 parent = btrfs_inode_extref_parent(eb, extref); in btrfs_check_ref_name_override()
5286 this_name_len = btrfs_inode_extref_name_len(eb, extref); in btrfs_check_ref_name_override()
5303 read_extent_buffer(eb, name, name_ptr, this_name_len); in btrfs_check_ref_name_override()