From fad65432ced7f5b419c7f9aa92264b0c01b3421b Mon Sep 17 00:00:00 2001 From: Wang Yechao Date: Fri, 21 Sep 2018 12:35:11 +0800 Subject: [PATCH] qemu: Fix deadlock if create qemuProcessReconnect thread failed Use the new qemuDomainRemoveInactiveJobLocked to remove the @obj during the virDomainObjListForEach call which holds a lock on the domain object list. Signed-off-by: Wang Yechao Reviewed-by: John Ferlan --- src/qemu/qemu_process.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index f9a01daee7..711db105be 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -8033,7 +8033,7 @@ qemuProcessReconnectHelper(virDomainObjPtr obj, */ qemuProcessStop(src->driver, obj, VIR_DOMAIN_SHUTOFF_FAILED, QEMU_ASYNC_JOB_NONE, 0); - qemuDomainRemoveInactiveJob(src->driver, obj); + qemuDomainRemoveInactiveJobLocked(src->driver, obj); virDomainObjEndAPI(&obj); virNWFilterUnlockFilterUpdates();