diff options
author | 2025-02-24 09:15:17 +0100 | |
---|---|---|
committer | 2025-03-18 20:35:48 +0100 | |
commit | 2e70d126f9dcef0efba3711c7da8820ac1d036d2 (patch) | |
tree | 585d39e615d866319f8ffbe2bb030143d7c28b6e | |
parent | btrfs: use BTRFS_PATH_AUTO_FREE in populate_free_space_tree() (diff) | |
download | wireguard-linux-2e70d126f9dcef0efba3711c7da8820ac1d036d2.tar.xz wireguard-linux-2e70d126f9dcef0efba3711c7da8820ac1d036d2.zip |
btrfs: use BTRFS_PATH_AUTO_FREE in clear_free_space_tree()
This is the trivial pattern for path auto free, initialize at the
beginning and free at the end with simple goto -> return conversions.
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r-- | fs/btrfs/free-space-tree.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/fs/btrfs/free-space-tree.c b/fs/btrfs/free-space-tree.c index d1ec02d5e1f6..589ff73ed13a 100644 --- a/fs/btrfs/free-space-tree.c +++ b/fs/btrfs/free-space-tree.c @@ -1215,7 +1215,7 @@ out_clear: static int clear_free_space_tree(struct btrfs_trans_handle *trans, struct btrfs_root *root) { - struct btrfs_path *path; + BTRFS_PATH_AUTO_FREE(path); struct btrfs_key key; int nr; int ret; @@ -1231,7 +1231,7 @@ static int clear_free_space_tree(struct btrfs_trans_handle *trans, while (1) { ret = btrfs_search_slot(trans, root, &key, path, -1, 1); if (ret < 0) - goto out; + return ret; nr = btrfs_header_nritems(path->nodes[0]); if (!nr) @@ -1240,15 +1240,12 @@ static int clear_free_space_tree(struct btrfs_trans_handle *trans, path->slots[0] = 0; ret = btrfs_del_items(trans, root, path, 0, nr); if (ret) - goto out; + return ret; btrfs_release_path(path); } - ret = 0; -out: - btrfs_free_path(path); - return ret; + return 0; } int btrfs_delete_free_space_tree(struct btrfs_fs_info *fs_info) |