[PATCH 5.12 267/363] btrfs: initialize return variable in cleanup_free_space_cache_v1

From: Greg Kroah-Hartman
Date: Mon May 17 2021 - 10:34:29 EST


From: Tom Rix <trix@xxxxxxxxxx>

commit 77364faf21b4105ee5adbb4844fdfb461334d249 upstream.

Static analysis reports this problem

free-space-cache.c:3965:2: warning: Undefined or garbage value returned
return ret;
^~~~~~~~~~

ret is set in the node handling loop. Treat doing nothing as a success
and initialize ret to 0, although it's unlikely the loop would be
skipped. We always have block groups, but as it could lead to
transaction abort in the caller it's better to be safe.

CC: stable@xxxxxxxxxxxxxxx # 5.12+
Signed-off-by: Tom Rix <trix@xxxxxxxxxx>
Reviewed-by: David Sterba <dsterba@xxxxxxxx>
Signed-off-by: David Sterba <dsterba@xxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
fs/btrfs/free-space-cache.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/fs/btrfs/free-space-cache.c
+++ b/fs/btrfs/free-space-cache.c
@@ -3942,7 +3942,7 @@ static int cleanup_free_space_cache_v1(s
{
struct btrfs_block_group *block_group;
struct rb_node *node;
- int ret;
+ int ret = 0;

btrfs_info(fs_info, "cleaning free space cache v1");