btrfs: remove all extra btrfs_check_eb_owner() calls
authorJosef Bacik <josef@toxicpanda.com>
Tue, 7 May 2024 18:12:03 +0000 (14:12 -0400)
committerDavid Sterba <dsterba@suse.com>
Thu, 11 Jul 2024 13:33:24 +0000 (15:33 +0200)
Currently we have a handful of btrfs_check_eb_owner() calls in various
places and helpers that read extent buffers.  However we call this in
the endio handler for every metadata block, so these extra checks are
unnecessary, simply remove them from everywhere except the endio
handler.

Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/ctree.c
fs/btrfs/disk-io.c

index 1a49b92..48aa140 100644 (file)
@@ -1551,12 +1551,7 @@ read_block_for_search(struct btrfs_root *root, struct btrfs_path *p,
                if (ret) {
                        free_extent_buffer(tmp);
                        btrfs_release_path(p);
-                       return -EIO;
-               }
-               if (btrfs_check_eb_owner(tmp, btrfs_root_id(root))) {
-                       free_extent_buffer(tmp);
-                       btrfs_release_path(p);
-                       return -EUCLEAN;
+                       return ret;
                }
 
                if (unlock_up)
index ffc9129..5870e76 100644 (file)
@@ -635,10 +635,6 @@ struct extent_buffer *read_tree_block(struct btrfs_fs_info *fs_info, u64 bytenr,
                free_extent_buffer_stale(buf);
                return ERR_PTR(ret);
        }
-       if (btrfs_check_eb_owner(buf, check->owner_root)) {
-               free_extent_buffer_stale(buf);
-               return ERR_PTR(-EUCLEAN);
-       }
        return buf;
 
 }