btrfs: fix ulist leaks in error paths of qgroup self tests
authorFilipe Manana <fdmanana@suse.com>
Tue, 1 Nov 2022 16:15:39 +0000 (16:15 +0000)
committerDavid Sterba <dsterba@suse.com>
Wed, 2 Nov 2022 16:43:32 +0000 (17:43 +0100)
commitd37de92b38932d40e4a251e876cc388f9aee5f42
treef619c06089fd78827eb4b5ca577b7438a2c1050d
parent92876eec382a0f19f33d09d2c939e9ca49038ae5
btrfs: fix ulist leaks in error paths of qgroup self tests

In the test_no_shared_qgroup() and test_multiple_refs() qgroup self tests,
if we fail to add the tree ref, remove the extent item or remove the
extent ref, we are returning from the test function without freeing the
"old_roots" ulist that was allocated by the previous calls to
btrfs_find_all_roots(). Fix that by calling ulist_free() before returning.

Fixes: 442244c96332 ("btrfs: qgroup: Switch self test to extent-oriented qgroup mechanism.")
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/tests/qgroup-tests.c