btrfs: use BTRFS_PATH_AUTO_FREE in btrfs_set_inode_index_count()
authorDavid Sterba <dsterba@suse.com>
Tue, 1 Apr 2025 23:18:08 +0000 (01:18 +0200)
committerDavid Sterba <dsterba@suse.com>
Thu, 15 May 2025 12:30:41 +0000 (14:30 +0200)
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: Daniel Vacek <neelx@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/inode.c

index 03524a1e7fdefdd06ae4a6b5c230fe6f561eeedb..72beac7b9099aa6aaea81ea5f9fcf51fa0182402 100644 (file)
@@ -5834,7 +5834,7 @@ static int btrfs_set_inode_index_count(struct btrfs_inode *inode)
 {
        struct btrfs_root *root = inode->root;
        struct btrfs_key key, found_key;
-       struct btrfs_path *path;
+       BTRFS_PATH_AUTO_FREE(path);
        struct extent_buffer *leaf;
        int ret;
 
@@ -5848,15 +5848,14 @@ static int btrfs_set_inode_index_count(struct btrfs_inode *inode)
 
        ret = btrfs_search_slot(NULL, root, &key, path, 0, 0);
        if (ret < 0)
-               goto out;
+               return ret;
        /* FIXME: we should be able to handle this */
        if (ret == 0)
-               goto out;
-       ret = 0;
+               return ret;
 
        if (path->slots[0] == 0) {
                inode->index_cnt = BTRFS_DIR_START_INDEX;
-               goto out;
+               return 0;
        }
 
        path->slots[0]--;
@@ -5867,13 +5866,12 @@ static int btrfs_set_inode_index_count(struct btrfs_inode *inode)
        if (found_key.objectid != btrfs_ino(inode) ||
            found_key.type != BTRFS_DIR_INDEX_KEY) {
                inode->index_cnt = BTRFS_DIR_START_INDEX;
-               goto out;
+               return 0;
        }
 
        inode->index_cnt = found_key.offset + 1;
-out:
-       btrfs_free_path(path);
-       return ret;
+
+       return 0;
 }
 
 static int btrfs_get_dir_last_index(struct btrfs_inode *dir, u64 *index)