]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
btrfs: file: remove unnecessary calls to btrfs_mark_buffer_dirty()
authorFilipe Manana <fdmanana@suse.com>
Wed, 18 Dec 2024 12:41:17 +0000 (12:41 +0000)
committerDavid Sterba <dsterba@suse.com>
Mon, 13 Jan 2025 13:53:19 +0000 (14:53 +0100)
We have several places explicitly calling btrfs_mark_buffer_dirty() but
that is not necessarily since the target leaf came from a path that was
obtained for a btree search function that modifies the btree, something
like btrfs_insert_empty_item() or anything else that ends up calling
btrfs_search_slot() with a value of 1 for its 'cow' argument.

These just make the code more verbose, confusing and add a little extra
overhead and well as increase the module's text size, so remove them.

Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/file.c

index 4775a17c4ee1445554afaabe3d6274bdf104f47c..36f51c311bb12cfebc64b6e8e6e7f7c3df96ff01 100644 (file)
@@ -314,7 +314,6 @@ next_slot:
                        btrfs_set_file_extent_offset(leaf, fi, extent_offset);
                        btrfs_set_file_extent_num_bytes(leaf, fi,
                                                        extent_end - args->start);
-                       btrfs_mark_buffer_dirty(trans, leaf);
 
                        if (update_refs && disk_bytenr > 0) {
                                struct btrfs_ref ref = {
@@ -360,7 +359,6 @@ next_slot:
                        btrfs_set_file_extent_offset(leaf, fi, extent_offset);
                        btrfs_set_file_extent_num_bytes(leaf, fi,
                                                        extent_end - args->end);
-                       btrfs_mark_buffer_dirty(trans, leaf);
                        if (update_refs && disk_bytenr > 0)
                                args->bytes_found += args->end - key.offset;
                        break;
@@ -384,7 +382,6 @@ next_slot:
 
                        btrfs_set_file_extent_num_bytes(leaf, fi,
                                                        args->start - key.offset);
-                       btrfs_mark_buffer_dirty(trans, leaf);
                        if (update_refs && disk_bytenr > 0)
                                args->bytes_found += extent_end - args->start;
                        if (args->end == extent_end)
@@ -639,7 +636,6 @@ again:
                                                         trans->transid);
                        btrfs_set_file_extent_num_bytes(leaf, fi,
                                                        end - other_start);
-                       btrfs_mark_buffer_dirty(trans, leaf);
                        goto out;
                }
        }
@@ -668,7 +664,6 @@ again:
                                                        other_end - start);
                        btrfs_set_file_extent_offset(leaf, fi,
                                                     start - orig_offset);
-                       btrfs_mark_buffer_dirty(trans, leaf);
                        goto out;
                }
        }
@@ -702,7 +697,6 @@ again:
                btrfs_set_file_extent_offset(leaf, fi, split - orig_offset);
                btrfs_set_file_extent_num_bytes(leaf, fi,
                                                extent_end - split);
-               btrfs_mark_buffer_dirty(trans, leaf);
 
                ref.action = BTRFS_ADD_DELAYED_REF;
                ref.bytenr = bytenr;
@@ -781,7 +775,6 @@ again:
                btrfs_set_file_extent_type(leaf, fi,
                                           BTRFS_FILE_EXTENT_REG);
                btrfs_set_file_extent_generation(leaf, fi, trans->transid);
-               btrfs_mark_buffer_dirty(trans, leaf);
        } else {
                fi = btrfs_item_ptr(leaf, del_slot - 1,
                           struct btrfs_file_extent_item);
@@ -790,7 +783,6 @@ again:
                btrfs_set_file_extent_generation(leaf, fi, trans->transid);
                btrfs_set_file_extent_num_bytes(leaf, fi,
                                                extent_end - key.offset);
-               btrfs_mark_buffer_dirty(trans, leaf);
 
                ret = btrfs_del_items(trans, root, path, del_slot, del_nr);
                if (ret < 0) {
@@ -2016,7 +2008,6 @@ static int fill_holes(struct btrfs_trans_handle *trans,
                btrfs_set_file_extent_ram_bytes(leaf, fi, num_bytes);
                btrfs_set_file_extent_offset(leaf, fi, 0);
                btrfs_set_file_extent_generation(leaf, fi, trans->transid);
-               btrfs_mark_buffer_dirty(trans, leaf);
                goto out;
        }
 
@@ -2033,7 +2024,6 @@ static int fill_holes(struct btrfs_trans_handle *trans,
                btrfs_set_file_extent_ram_bytes(leaf, fi, num_bytes);
                btrfs_set_file_extent_offset(leaf, fi, 0);
                btrfs_set_file_extent_generation(leaf, fi, trans->transid);
-               btrfs_mark_buffer_dirty(trans, leaf);
                goto out;
        }
        btrfs_release_path(path);
@@ -2181,7 +2171,6 @@ static int btrfs_insert_replace_extent(struct btrfs_trans_handle *trans,
        btrfs_set_file_extent_num_bytes(leaf, extent, replace_len);
        if (extent_info->is_new_extent)
                btrfs_set_file_extent_generation(leaf, extent, trans->transid);
-       btrfs_mark_buffer_dirty(trans, leaf);
        btrfs_release_path(path);
 
        ret = btrfs_inode_set_file_extent_range(inode, extent_info->file_offset,