multi is guaranteed to be NULL in the first two error exit paths so the
attempt to free it is not needed. Remove those calls.

This issue found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodb...@linaro.org>
---
 fs/btrfs/volumes.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index 5726981b19c..71b0b55b9c6 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -972,12 +972,10 @@ int __btrfs_map_block(struct btrfs_fs_info *fs_info, int 
rw,
 again:
        ce = search_cache_extent(&map_tree->cache_tree, logical);
        if (!ce) {
-               kfree(multi);
                *length = (u64)-1;
                return -ENOENT;
        }
        if (ce->start > logical) {
-               kfree(multi);
                *length = ce->start - logical;
                return -ENOENT;
        }

---
base-commit: d1d53c252a4a746db5ebcdf0d6de3aa0feec504e
change-id: 20250708-btrfs_fix-a24cbe4ad37b

Best regards,
-- 
Andrew Goodbody <andrew.goodb...@linaro.org>

Reply via email to