btrfs: use BTRFS_PATH_AUTO_FREE in btrfs_remove_free_space_inode()
authorDavid Sterba <dsterba@suse.com>
Mon, 24 Feb 2025 08:15:17 +0000 (09:15 +0100)
committerDavid Sterba <dsterba@suse.com>
Tue, 18 Mar 2025 19:35:48 +0000 (20:35 +0100)
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>
fs/btrfs/free-space-cache.c

index 056546bf9abdb26daa8ffb4efa5184acf789b80f..3095cce904b55e942e56d24527c77cd5a9ca582b 100644 (file)
@@ -244,7 +244,7 @@ int btrfs_remove_free_space_inode(struct btrfs_trans_handle *trans,
                                  struct inode *inode,
                                  struct btrfs_block_group *block_group)
 {
-       struct btrfs_path *path;
+       BTRFS_PATH_AUTO_FREE(path);
        struct btrfs_key key;
        int ret = 0;
 
@@ -257,12 +257,12 @@ int btrfs_remove_free_space_inode(struct btrfs_trans_handle *trans,
        if (IS_ERR(inode)) {
                if (PTR_ERR(inode) != -ENOENT)
                        ret = PTR_ERR(inode);
-               goto out;
+               return ret;
        }
        ret = btrfs_orphan_add(trans, BTRFS_I(inode));
        if (ret) {
                btrfs_add_delayed_iput(BTRFS_I(inode));
-               goto out;
+               return ret;
        }
        clear_nlink(inode);
        /* One for the block groups ref */
@@ -285,12 +285,9 @@ int btrfs_remove_free_space_inode(struct btrfs_trans_handle *trans,
        if (ret) {
                if (ret > 0)
                        ret = 0;
-               goto out;
+               return ret;
        }
-       ret = btrfs_del_item(trans, trans->fs_info->tree_root, path);
-out:
-       btrfs_free_path(path);
-       return ret;
+       return btrfs_del_item(trans, trans->fs_info->tree_root, path);
 }
 
 int btrfs_truncate_free_space_cache(struct btrfs_trans_handle *trans,