btrfs-progs: btrfs_item_size_nr/btrfs_item_offset_nr everywhere

We have this pattern in a lot of places

	item = btrfs_item_nr(slot);
	btrfs_item_size(leaf, item);
	btrfs_item_offset(leaf, item);

when we could simply use

	btrfs_item_size_nr(leaf, slot);
	btrfs_item_offset_nr(leaf, slot);

Fix all callers of btrfs_item_size() and btrfs_item_offset() to use the
_nr variation of the helpers.

Reviewed-by: Nikolay Borisov <nborisov@suse.com>
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Josef Bacik 2022-02-22 17:26:16 -05:00 committed by David Sterba
parent ed098523dc
commit 80ff3f2c8e
7 changed files with 24 additions and 30 deletions

View File

@ -4222,10 +4222,10 @@ static int swap_values(struct btrfs_root *root, struct btrfs_path *path,
item2 = btrfs_item_nr(slot + 1);
btrfs_item_key_to_cpu(buf, &k1, slot);
btrfs_item_key_to_cpu(buf, &k2, slot + 1);
item1_offset = btrfs_item_offset(buf, item1);
item2_offset = btrfs_item_offset(buf, item2);
item1_size = btrfs_item_size(buf, item1);
item2_size = btrfs_item_size(buf, item2);
item1_offset = btrfs_item_offset_nr(buf, slot);
item2_offset = btrfs_item_offset_nr(buf, slot + 1);
item1_size = btrfs_item_size_nr(buf, slot);
item2_size = btrfs_item_size_nr(buf, slot + 1);
item1_data = malloc(item1_size);
if (!item1_data)

View File

@ -1239,7 +1239,7 @@ static void truncate_item(struct extent_buffer *eb, int slot, u32 new_size)
for (i = slot; i < nritems; i++) {
u32 ioff;
item = btrfs_item_nr(i);
ioff = btrfs_item_offset(eb, item);
ioff = btrfs_item_offset_nr(eb, i);
btrfs_set_item_offset(eb, item, ioff + size_diff);
}

View File

@ -1417,7 +1417,6 @@ static int iterate_inode_refs(u64 inum, struct btrfs_root *fs_root,
u64 parent = 0;
int found = 0;
struct extent_buffer *eb;
struct btrfs_item *item;
struct btrfs_inode_ref *iref;
struct btrfs_key found_key;
@ -1442,10 +1441,9 @@ static int iterate_inode_refs(u64 inum, struct btrfs_root *fs_root,
extent_buffer_get(eb);
btrfs_release_path(path);
item = btrfs_item_nr(slot);
iref = btrfs_item_ptr(eb, slot, struct btrfs_inode_ref);
for (cur = 0; cur < btrfs_item_size(eb, item); cur += len) {
for (cur = 0; cur < btrfs_item_size_nr(eb, slot); cur += len) {
name_len = btrfs_inode_ref_name_len(eb, iref);
/* path must be released before calling iterate()! */
pr_debug("following ref at offset %u for inode %llu in "

View File

@ -2041,7 +2041,7 @@ static int push_leaf_right(struct btrfs_trans_handle *trans, struct btrfs_root
if (path->slots[0] == i)
push_space += data_size + sizeof(*item);
this_item_size = btrfs_item_size(left, item);
this_item_size = btrfs_item_size_nr(left, i);
if (this_item_size + sizeof(*item) + push_space > free_space)
break;
push_items++;
@ -2092,7 +2092,7 @@ static int push_leaf_right(struct btrfs_trans_handle *trans, struct btrfs_root
push_space = BTRFS_LEAF_DATA_SIZE(root->fs_info);
for (i = 0; i < right_nritems; i++) {
item = btrfs_item_nr(i);
push_space -= btrfs_item_size(right, item);
push_space -= btrfs_item_size_nr(right, i);
btrfs_set_item_offset(right, item, push_space);
}
@ -2187,7 +2187,7 @@ static int push_leaf_left(struct btrfs_trans_handle *trans, struct btrfs_root
if (path->slots[0] == i)
push_space += data_size + sizeof(*item);
this_item_size = btrfs_item_size(right, item);
this_item_size = btrfs_item_size_nr(right, i);
if (this_item_size + sizeof(*item) + push_space > free_space)
break;
@ -2224,7 +2224,7 @@ static int push_leaf_left(struct btrfs_trans_handle *trans, struct btrfs_root
u32 ioff;
item = btrfs_item_nr(i);
ioff = btrfs_item_offset(left, item);
ioff = btrfs_item_offset_nr(left, i);
btrfs_set_item_offset(left, item,
ioff - (BTRFS_LEAF_DATA_SIZE(root->fs_info) -
old_left_item_size));
@ -2256,7 +2256,7 @@ static int push_leaf_left(struct btrfs_trans_handle *trans, struct btrfs_root
push_space = BTRFS_LEAF_DATA_SIZE(root->fs_info);
for (i = 0; i < right_nritems; i++) {
item = btrfs_item_nr(i);
push_space = push_space - btrfs_item_size(right, item);
push_space = push_space - btrfs_item_size_nr(right, i);
btrfs_set_item_offset(right, item, push_space);
}
@ -2319,7 +2319,7 @@ static noinline int copy_for_split(struct btrfs_trans_handle *trans,
for (i = 0; i < nritems; i++) {
struct btrfs_item *item = btrfs_item_nr(i);
u32 ioff = btrfs_item_offset(right, item);
u32 ioff = btrfs_item_offset_nr(right, i);
btrfs_set_item_offset(right, item, ioff + rt_data_off);
}
@ -2574,8 +2574,8 @@ int btrfs_split_item(struct btrfs_trans_handle *trans,
split:
item = btrfs_item_nr(path->slots[0]);
orig_offset = btrfs_item_offset(leaf, item);
item_size = btrfs_item_size(leaf, item);
orig_offset = btrfs_item_offset_nr(leaf, path->slots[0]);
item_size = btrfs_item_size_nr(leaf, path->slots[0]);
buf = kmalloc(item_size, GFP_NOFS);
@ -2666,7 +2666,7 @@ int btrfs_truncate_item(struct btrfs_path *path, u32 new_size, int from_end)
for (i = slot; i < nritems; i++) {
u32 ioff;
item = btrfs_item_nr(i);
ioff = btrfs_item_offset(leaf, item);
ioff = btrfs_item_offset_nr(leaf, i);
btrfs_set_item_offset(leaf, item, ioff + size_diff);
}
@ -2762,7 +2762,7 @@ int btrfs_extend_item(struct btrfs_root *root, struct btrfs_path *path,
for (i = slot; i < nritems; i++) {
u32 ioff;
item = btrfs_item_nr(i);
ioff = btrfs_item_offset(leaf, item);
ioff = btrfs_item_offset_nr(leaf, i);
btrfs_set_item_offset(leaf, item, ioff - data_size);
}
@ -2854,7 +2854,7 @@ int btrfs_insert_empty_items(struct btrfs_trans_handle *trans,
u32 ioff;
item = btrfs_item_nr(i);
ioff = btrfs_item_offset(leaf, item);
ioff = btrfs_item_offset_nr(leaf, i);
btrfs_set_item_offset(leaf, item, ioff - total_data);
}
@ -3029,7 +3029,7 @@ int btrfs_del_items(struct btrfs_trans_handle *trans, struct btrfs_root *root,
u32 ioff;
item = btrfs_item_nr(i);
ioff = btrfs_item_offset(leaf, item);
ioff = btrfs_item_offset_nr(leaf, i);
btrfs_set_item_offset(leaf, item, ioff + dsize);
}

View File

@ -32,7 +32,6 @@ static struct btrfs_dir_item *insert_with_overflow(struct btrfs_trans_handle
{
int ret;
char *ptr;
struct btrfs_item *item;
struct extent_buffer *leaf;
ret = btrfs_insert_empty_item(trans, root, path, cpu_key, data_size);
@ -48,10 +47,9 @@ static struct btrfs_dir_item *insert_with_overflow(struct btrfs_trans_handle
return ERR_PTR(ret);
WARN_ON(ret > 0);
leaf = path->nodes[0];
item = btrfs_item_nr(path->slots[0]);
ptr = btrfs_item_ptr(leaf, path->slots[0], char);
BUG_ON(data_size > btrfs_item_size(leaf, item));
ptr += btrfs_item_size(leaf, item) - data_size;
BUG_ON(data_size > btrfs_item_size_nr(leaf, path->slots[0]));
ptr += btrfs_item_size_nr(leaf, path->slots[0]) - data_size;
return (struct btrfs_dir_item *)ptr;
}

View File

@ -336,7 +336,6 @@ int btrfs_insert_inode_extref(struct btrfs_trans_handle *trans,
struct btrfs_path *path;
struct btrfs_key key;
struct extent_buffer *leaf;
struct btrfs_item *item;
key.objectid = inode_objectid;
key.type = BTRFS_INODE_EXTREF_KEY;
@ -361,9 +360,8 @@ int btrfs_insert_inode_extref(struct btrfs_trans_handle *trans,
goto out;
leaf = path->nodes[0];
item = btrfs_item_nr(path->slots[0]);
ptr = (unsigned long)btrfs_item_ptr(leaf, path->slots[0], char);
ptr += btrfs_item_size(leaf, item) - ins_len;
ptr += btrfs_item_size_nr(leaf, path->slots[0]) - ins_len;
extref = (struct btrfs_inode_extref *)ptr;
btrfs_set_inode_extref_name_len(path->nodes[0], extref, name_len);

View File

@ -1320,7 +1320,7 @@ void btrfs_print_leaf(struct extent_buffer *eb, unsigned int mode)
break;
}
item = btrfs_item_nr(i);
item_size = btrfs_item_size(eb, item);
item_size = btrfs_item_size_nr(eb, i);
/* Untyped extraction of slot from btrfs_item_ptr */
ptr = btrfs_item_ptr(eb, i, void*);
@ -1332,8 +1332,8 @@ void btrfs_print_leaf(struct extent_buffer *eb, unsigned int mode)
printf("\titem %u ", i);
btrfs_print_key(&disk_key);
printf(" itemoff %u itemsize %u\n",
btrfs_item_offset(eb, item),
btrfs_item_size(eb, item));
btrfs_item_offset_nr(eb, i),
btrfs_item_size_nr(eb, i));
if (type == 0 && objectid == BTRFS_FREE_SPACE_OBJECTID)
print_free_space_header(eb, i);