[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 2/6] block: bdrv_reopen_multiple(): fix leak of tran object
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
[PATCH 2/6] block: bdrv_reopen_multiple(): fix leak of tran object |
Date: |
Mon, 3 May 2021 14:33:58 +0300 |
We have one path, where tran object is created, but we don't touch and
don't free it in any way: "goto cleanup" in first loop with calls to
bdrv_flush().
Fix it simply moving tran_new() call below that loop.
Reported-by: Coverity (CID 1452772)
Reported-by: Peter Maydell <peter.maydell@linaro.org>
Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Fixes: 72373e40fbc7e4218061a8211384db362d3e7348
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
---
block.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/block.c b/block.c
index 728aa34b2f..c4023ab4f4 100644
--- a/block.c
+++ b/block.c
@@ -4047,7 +4047,7 @@ int bdrv_reopen_multiple(BlockReopenQueue *bs_queue,
Error **errp)
{
int ret = -1;
BlockReopenQueueEntry *bs_entry, *next;
- Transaction *tran = tran_new();
+ Transaction *tran;
g_autoptr(GHashTable) found = NULL;
g_autoptr(GSList) refresh_list = NULL;
@@ -4061,6 +4061,8 @@ int bdrv_reopen_multiple(BlockReopenQueue *bs_queue,
Error **errp)
}
}
+ tran = tran_new();
+
QTAILQ_FOREACH(bs_entry, bs_queue, entry) {
assert(bs_entry->state.bs->quiesce_counter > 0);
ret = bdrv_reopen_prepare(&bs_entry->state, bs_queue, tran, errp);
--
2.29.2
- [PATCH 0/6] block permission updated follow-up, Vladimir Sementsov-Ogievskiy, 2021/05/03
- [PATCH 1/6] block: fix leak of tran in bdrv_root_attach_child, Vladimir Sementsov-Ogievskiy, 2021/05/03
- [PATCH 2/6] block: bdrv_reopen_multiple(): fix leak of tran object,
Vladimir Sementsov-Ogievskiy <=
- [PATCH 6/6] block: improve permission conflict error message, Vladimir Sementsov-Ogievskiy, 2021/05/03
- [PATCH 3/6] block-backend: improve blk_root_get_parent_desc(), Vladimir Sementsov-Ogievskiy, 2021/05/03
- [PATCH 4/6] block: improve bdrv_child_get_parent_desc(), Vladimir Sementsov-Ogievskiy, 2021/05/03
- [PATCH 5/6] block: simplify bdrv_child_user_desc(), Vladimir Sementsov-Ogievskiy, 2021/05/03