btrfs: sink total_data parameter in setup_items_for_insert
authorNikolay Borisov <nborisov@suse.com>
Tue, 1 Sep 2020 14:39:59 +0000 (17:39 +0300)
committerDavid Sterba <dsterba@suse.com>
Wed, 7 Oct 2020 10:13:18 +0000 (12:13 +0200)
That parameter can easily be derived based on the "data_size" and "nr"
parameters exploit this fact to simply the function's signature. No
functional changes.

Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/ctree.c
fs/btrfs/ctree.h
fs/btrfs/delayed-inode.c
fs/btrfs/file.c
fs/btrfs/tests/extent-buffer-tests.c
fs/btrfs/tests/inode-tests.c

index a855ce0..a0a4a88 100644 (file)
@@ -4580,7 +4580,7 @@ int btrfs_duplicate_item(struct btrfs_trans_handle *trans,
                return ret;
 
        path->slots[0]++;
-       setup_items_for_insert(root, path, new_key, &item_size, item_size, 1);
+       setup_items_for_insert(root, path, new_key, &item_size, 1);
        leaf = path->nodes[0];
        memcpy_extent_buffer(leaf,
                             btrfs_item_ptr_offset(leaf, path->slots[0]),
@@ -4760,7 +4760,7 @@ void btrfs_extend_item(struct btrfs_path *path, u32 data_size)
  */
 void setup_items_for_insert(struct btrfs_root *root, struct btrfs_path *path,
                            const struct btrfs_key *cpu_key, u32 *data_size,
-                           u32 total_data, int nr)
+                           int nr)
 {
        struct btrfs_fs_info *fs_info = root->fs_info;
        struct btrfs_item *item;
@@ -4771,7 +4771,12 @@ void setup_items_for_insert(struct btrfs_root *root, struct btrfs_path *path,
        struct extent_buffer *leaf;
        int slot;
        struct btrfs_map_token token;
-       const u32 total_size = total_data + (nr * sizeof(struct btrfs_item));
+       u32 total_size;
+       u32 total_data = 0;
+
+       for (i = 0; i < nr; i++)
+               total_data += data_size[i];
+       total_size = total_data + (nr * sizeof(struct btrfs_item));
 
        if (path->slots[0] == 0) {
                btrfs_cpu_key_to_disk(&disk_key, cpu_key);
@@ -4874,7 +4879,7 @@ int btrfs_insert_empty_items(struct btrfs_trans_handle *trans,
        slot = path->slots[0];
        BUG_ON(slot < 0);
 
-       setup_items_for_insert(root, path, cpu_key, data_size, total_data, nr);
+       setup_items_for_insert(root, path, cpu_key, data_size, nr);
        return 0;
 }
 
index c4f9c19..cd644c7 100644 (file)
@@ -2744,7 +2744,7 @@ static inline int btrfs_del_item(struct btrfs_trans_handle *trans,
 
 void setup_items_for_insert(struct btrfs_root *root, struct btrfs_path *path,
                            const struct btrfs_key *cpu_key, u32 *data_size,
-                           u32 total_data, int nr);
+                           int nr);
 int btrfs_insert_item(struct btrfs_trans_handle *trans, struct btrfs_root *root,
                      const struct btrfs_key *key, void *data, u32 data_size);
 int btrfs_insert_empty_items(struct btrfs_trans_handle *trans,
index 0360e07..5aba81e 100644 (file)
@@ -768,8 +768,7 @@ static int btrfs_batch_insert_items(struct btrfs_root *root,
        }
 
        /* insert the keys of the items */
-       setup_items_for_insert(root, path, keys, data_size, total_data_size,
-                              nitems);
+       setup_items_for_insert(root, path, keys, data_size, nitems);
 
        /* insert the dir index items */
        slot = path->slots[0];
index fefe152..2969d71 100644 (file)
@@ -1057,8 +1057,7 @@ delete_extent_item:
                        if (btrfs_comp_cpu_keys(&key, &slot_key) > 0)
                                path->slots[0]++;
                }
-               setup_items_for_insert(root, path, &key, &extent_item_size,
-                                      extent_item_size, 1);
+               setup_items_for_insert(root, path, &key, &extent_item_size, 1);
                *key_inserted = 1;
        }
 
index a792a1d..df54cdf 100644 (file)
@@ -60,7 +60,7 @@ static int test_btrfs_split_item(u32 sectorsize, u32 nodesize)
        key.type = BTRFS_EXTENT_CSUM_KEY;
        key.offset = 0;
 
-       setup_items_for_insert(root, path, &key, &value_len, value_len, 1);
+       setup_items_for_insert(root, path, &key, &value_len, 1);
        item = btrfs_item_nr(0);
        write_extent_buffer(eb, value, btrfs_item_ptr_offset(eb, 0),
                            value_len);
index 068b6ef..cc54d49 100644 (file)
@@ -33,7 +33,7 @@ static void insert_extent(struct btrfs_root *root, u64 start, u64 len,
        key.type = BTRFS_EXTENT_DATA_KEY;
        key.offset = start;
 
-       setup_items_for_insert(root, &path, &key, &value_len, value_len, 1);
+       setup_items_for_insert(root, &path, &key, &value_len, 1);
        fi = btrfs_item_ptr(leaf, slot, struct btrfs_file_extent_item);
        btrfs_set_file_extent_generation(leaf, fi, 1);
        btrfs_set_file_extent_type(leaf, fi, type);
@@ -63,7 +63,7 @@ static void insert_inode_item_key(struct btrfs_root *root)
        key.type = BTRFS_INODE_ITEM_KEY;
        key.offset = 0;
 
-       setup_items_for_insert(root, &path, &key, &value_len, value_len, 1);
+       setup_items_for_insert(root, &path, &key, &value_len, 1);
 }
 
 /*