summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/volumes.c
diff options
context:
space:
mode:
authorNikolay Borisov <nborisov@suse.com>2020-12-17 15:21:16 +0200
committerDavid Sterba <dsterba@suse.com>2021-02-08 22:58:51 +0100
commit7056bf69e5a338811738a7932b8e707aaca9fdd0 (patch)
tree66a9ec7443fabbe547d81c3a406d7dacfa7a116f /fs/btrfs/volumes.c
parent1478143ac81acc4094f8501a88e9e6ef9ff0e4a5 (diff)
downloadlinux-stable-7056bf69e5a338811738a7932b8e707aaca9fdd0.tar.gz
linux-stable-7056bf69e5a338811738a7932b8e707aaca9fdd0.tar.bz2
linux-stable-7056bf69e5a338811738a7932b8e707aaca9fdd0.zip
btrfs: consolidate btrfs_previous_item ret val handling in btrfs_shrink_device
Instead of having three 'if' to handle non-NULL return value consolidate this in one 'if (ret)'. That way the code is more obvious: - Always drop delete_unused_bgs_mutex if ret is not NULL - If ret is negative -> goto done - If it's 1 -> reset ret to 0, release the path and finish the loop. Reviewed-by: Josef Bacik <josef@toxicpanda.com> Signed-off-by: Nikolay Borisov <nborisov@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/volumes.c')
-rw-r--r--fs/btrfs/volumes.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index d6c24c8ad749..a8ec8539cd8d 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -4668,11 +4668,10 @@ again:
}
ret = btrfs_previous_item(root, path, 0, key.type);
- if (ret)
- mutex_unlock(&fs_info->delete_unused_bgs_mutex);
- if (ret < 0)
- goto done;
if (ret) {
+ mutex_unlock(&fs_info->delete_unused_bgs_mutex);
+ if (ret < 0)
+ goto done;
ret = 0;
btrfs_release_path(path);
break;