btrfs: make btrfs_destroy_marked_extents() return void
authorFilipe Manana <fdmanana@suse.com>
Fri, 30 Jun 2023 15:03:47 +0000 (16:03 +0100)
committerDavid Sterba <dsterba@suse.com>
Mon, 21 Aug 2023 12:52:12 +0000 (14:52 +0200)
Currently btrfs_destroy_marked_extents() is returning the value of the
last call to find_first_extent_bit(), which returns a value of 1 meaning
no more ranges found the dirty pages io tree. This value is useless to the
single caller of btrfs_destroy_marked_extents(), which ignores any return
value from btrfs_destroy_marked_extents(). This is because it's only used
in the transaction abort path, where we can't even deal with any errors
since we are in a critical situation already and cleanup of resources is
done in a best effort fashion.

So make btrfs_destroy_marked_extents() return void.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/disk-io.c

index a9a2c54..1957bb1 100644 (file)
@@ -4716,21 +4716,16 @@ static void btrfs_destroy_all_delalloc_inodes(struct btrfs_fs_info *fs_info)
        spin_unlock(&fs_info->delalloc_root_lock);
 }
 
-static int btrfs_destroy_marked_extents(struct btrfs_fs_info *fs_info,
-                                       struct extent_io_tree *dirty_pages,
-                                       int mark)
+static void btrfs_destroy_marked_extents(struct btrfs_fs_info *fs_info,
+                                        struct extent_io_tree *dirty_pages,
+                                        int mark)
 {
-       int ret;
        struct extent_buffer *eb;
        u64 start = 0;
        u64 end;
 
-       while (1) {
-               ret = find_first_extent_bit(dirty_pages, start, &start, &end,
-                                           mark, NULL);
-               if (ret)
-                       break;
-
+       while (!find_first_extent_bit(dirty_pages, start, &start, &end,
+                                     mark, NULL)) {
                clear_extent_bits(dirty_pages, start, end, mark);
                while (start <= end) {
                        eb = find_extent_buffer(fs_info, start);
@@ -4746,8 +4741,6 @@ static int btrfs_destroy_marked_extents(struct btrfs_fs_info *fs_info,
                        free_extent_buffer_stale(eb);
                }
        }
-
-       return ret;
 }
 
 static int btrfs_destroy_pinned_extent(struct btrfs_fs_info *fs_info,