[libvirt] [PATCH] qemu: avoid deadlock on domain object enter monitor fail

Wang King posted 1 patch 6 years, 9 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20170719064024.11548-1-king.wang@huawei.com
src/qemu/qemu_migration.c | 2 +-
src/qemu/qemu_process.c   | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
[libvirt] [PATCH] qemu: avoid deadlock on domain object enter monitor fail
Posted by Wang King 6 years, 9 months ago
Should be followed with qemuDomainObjExitMonitor only if
qemuDomainObjEnterMonitorAsync returns 0.
---
 src/qemu/qemu_migration.c | 2 +-
 src/qemu/qemu_process.c   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
index c23fffe..dc56263 100644
--- a/src/qemu/qemu_migration.c
+++ b/src/qemu/qemu_migration.c
@@ -108,7 +108,7 @@ qemuMigrationCheckTLSCreds(virQEMUDriverPtr driver,
     qemuMonitorMigrationParams migParams = { 0 };
 
     if (qemuDomainObjEnterMonitorAsync(driver, vm, asyncJob) < 0)
-        goto cleanup;
+        return -1;
 
     if (qemuMonitorGetMigrationParams(priv->mon, &migParams) < 0)
         goto cleanup;
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
index c2c3e8b..8d3cfe0 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
@@ -4349,7 +4349,7 @@ qemuProcessSetupBalloon(virQEMUDriverPtr driver,
         return 0;
 
     if (qemuDomainObjEnterMonitorAsync(driver, vm, asyncJob) < 0)
-        goto cleanup;
+        return -1;
 
     if (vm->def->memballoon->period)
         qemuMonitorSetMemoryStatsPeriod(priv->mon, vm->def->memballoon,
-- 
2.8.3


--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH] qemu: avoid deadlock on domain object enter monitor fail
Posted by Jiri Denemark 6 years, 9 months ago
On Wed, Jul 19, 2017 at 14:40:24 +0800, Wang King wrote:
> Should be followed with qemuDomainObjExitMonitor only if
> qemuDomainObjEnterMonitorAsync returns 0.
> ---
>  src/qemu/qemu_migration.c | 2 +-
>  src/qemu/qemu_process.c   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)

ACK and pushed. Thanks.

Jirka

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list