31 lines
1.1 KiB
Diff
31 lines
1.1 KiB
Diff
From 9ac804f2001675a05f01a2f74af0c85861801e59 Mon Sep 17 00:00:00 2001
|
|
From: Filipe Manana <fdmanana@suse.com>
|
|
Date: Tue, 11 Mar 2025 15:50:50 +0000
|
|
Subject: btrfs: tests: fix chunk map leak after failure to add it to the tree
|
|
|
|
If we fail to add the chunk map to the fs mapping tree we exit
|
|
test_rmap_block() without freeing the chunk map. Fix this by adding a
|
|
call to btrfs_free_chunk_map() before exiting the test function if the
|
|
call to btrfs_add_chunk_map() failed.
|
|
|
|
Fixes: 7dc66abb5a47 ("btrfs: use a dedicated data structure for chunk maps")
|
|
CC: stable@vger.kernel.org # 6.12+
|
|
Reviewed-by: Boris Burkov <boris@bur.io>
|
|
Signed-off-by: Filipe Manana <fdmanana@suse.com>
|
|
Reviewed-by: David Sterba <dsterba@suse.com>
|
|
Signed-off-by: David Sterba <dsterba@suse.com>
|
|
---
|
|
fs/btrfs/tests/extent-map-tests.c | 1 +
|
|
1 file changed, 1 insertion(+)
|
|
|
|
--- a/fs/btrfs/tests/extent-map-tests.c
|
|
+++ b/fs/btrfs/tests/extent-map-tests.c
|
|
@@ -1045,6 +1045,7 @@ static int test_rmap_block(struct btrfs_
|
|
ret = btrfs_add_chunk_map(fs_info, map);
|
|
if (ret) {
|
|
test_err("error adding chunk map to mapping tree");
|
|
+ btrfs_free_chunk_map(map);
|
|
goto out_free;
|
|
}
|
|
|