Skip to content

Commit

Permalink
btrfs: simplify return variables in lookup_extent_data_ref()
Browse files Browse the repository at this point in the history
First, drop err instead reuse ret, choose to return the error instead of
goto fail and then return the same error. Do not initialize the ret
until where it has to be initialized. Slight logic change in handling
the btrfs_search_slot() and btrfs_next_leaf() return value.

Signed-off-by: Anand Jain <anand.jain@oracle.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
  • Loading branch information
Anand Jain authored and David Sterba committed May 7, 2024
1 parent 6e812a9 commit 1618aa3
Showing 1 changed file with 14 additions and 15 deletions.
29 changes: 14 additions & 15 deletions fs/btrfs/extent-tree.c
Original file line number Diff line number Diff line change
Expand Up @@ -446,9 +446,8 @@ static noinline int lookup_extent_data_ref(struct btrfs_trans_handle *trans,
struct btrfs_extent_data_ref *ref;
struct extent_buffer *leaf;
u32 nritems;
int ret;
int recow;
int err = -ENOENT;
int ret;

key.objectid = bytenr;
if (parent) {
Expand All @@ -462,26 +461,26 @@ static noinline int lookup_extent_data_ref(struct btrfs_trans_handle *trans,
again:
recow = 0;
ret = btrfs_search_slot(trans, root, &key, path, -1, 1);
if (ret < 0) {
err = ret;
goto fail;
}
if (ret < 0)
return ret;

if (parent) {
if (!ret)
return 0;
goto fail;
if (ret)
return -ENOENT;
return 0;
}

ret = -ENOENT;
leaf = path->nodes[0];
nritems = btrfs_header_nritems(leaf);
while (1) {
if (path->slots[0] >= nritems) {
ret = btrfs_next_leaf(root, path);
if (ret < 0)
err = ret;
if (ret)
goto fail;
if (ret) {
if (ret > 1)
return -ENOENT;
return ret;
}

leaf = path->nodes[0];
nritems = btrfs_header_nritems(leaf);
Expand All @@ -502,13 +501,13 @@ static noinline int lookup_extent_data_ref(struct btrfs_trans_handle *trans,
btrfs_release_path(path);
goto again;
}
err = 0;
ret = 0;
break;
}
path->slots[0]++;
}
fail:
return err;
return ret;
}

static noinline int insert_extent_data_ref(struct btrfs_trans_handle *trans,
Expand Down

0 comments on commit 1618aa3

Please sign in to comment.