render / rpms / libvirt

Forked from rpms/libvirt 9 months ago
Clone
d76c62
From 54b47c1f5bf860e2fadeb17a954a109aafd62067 Mon Sep 17 00:00:00 2001
d76c62
Message-Id: <54b47c1f5bf860e2fadeb17a954a109aafd62067@dist-git>
d76c62
From: Peter Krempa <pkrempa@redhat.com>
d76c62
Date: Thu, 26 Mar 2020 18:25:12 +0100
d76c62
Subject: [PATCH] qemuBackupBegin: Fix monitor access when rolling back due to
d76c62
 failure
d76c62
MIME-Version: 1.0
d76c62
Content-Type: text/plain; charset=UTF-8
d76c62
Content-Transfer-Encoding: 8bit
d76c62
d76c62
The code attempting to clean up after a failed pull mode backup job
d76c62
wrongly entered monitor but didn't clean up nor exit monitor due to a
d76c62
logic bug. Fix the condition.
d76c62
d76c62
Introduced in a1521f84a53
d76c62
d76c62
https://bugzilla.redhat.com/show_bug.cgi?id=1817327
d76c62
d76c62
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
d76c62
Reviewed-by: Eric Blake <eblake@redhat.com>
d76c62
(cherry picked from commit e060b0624d1b78438b759cc5a25da87b28c9736c)
d76c62
Message-Id: <95ad49e5316e5f9dd992e463bc7536e3046140d4.1585243469.git.pkrempa@redhat.com>
d76c62
Reviewed-by: Ján Tomko <jtomko@redhat.com>
d76c62
---
d76c62
 src/qemu/qemu_backup.c | 2 +-
d76c62
 1 file changed, 1 insertion(+), 1 deletion(-)
d76c62
d76c62
diff --git a/src/qemu/qemu_backup.c b/src/qemu/qemu_backup.c
d76c62
index 8b66ee8d1f..9a056fa407 100644
d76c62
--- a/src/qemu/qemu_backup.c
d76c62
+++ b/src/qemu/qemu_backup.c
d76c62
@@ -894,7 +894,7 @@ qemuBackupBegin(virDomainObjPtr vm,
d76c62
     qemuCheckpointRollbackMetadata(vm, chk);
d76c62
 
d76c62
     if (!job_started && nbd_running &&
d76c62
-        qemuDomainObjEnterMonitorAsync(priv->driver, vm, QEMU_ASYNC_JOB_BACKUP) < 0) {
d76c62
+        qemuDomainObjEnterMonitorAsync(priv->driver, vm, QEMU_ASYNC_JOB_BACKUP) == 0) {
d76c62
         ignore_value(qemuMonitorNBDServerStop(priv->mon));
d76c62
         ignore_value(qemuDomainObjExitMonitor(priv->driver, vm));
d76c62
     }
d76c62
-- 
d76c62
2.26.0
d76c62