]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu-migration: prevent migration if dbus-vmstate is required
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Thu, 8 Aug 2019 14:55:08 +0000 (18:55 +0400)
committerMichal Privoznik <mprivozn@redhat.com>
Fri, 6 Sep 2019 10:47:47 +0000 (12:47 +0200)
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/qemu/qemu_migration.c

index 6ff956b1f5d7041008d793117805152dc0f2e189..d1553b126a4dd517481b4160eb8f2e4b29909a59 100644 (file)
@@ -1105,6 +1105,7 @@ qemuMigrationSrcIsAllowed(virQEMUDriverPtr driver,
                           bool remote,
                           unsigned int flags)
 {
+    qemuDomainObjPrivatePtr priv = vm->privateData;
     int nsnapshots;
     int pauseReason;
     size_t i;
@@ -1131,7 +1132,13 @@ qemuMigrationSrcIsAllowed(virQEMUDriverPtr driver,
                            _("cannot migrate domain with I/O error"));
             return false;
         }
+    }
 
+    if (virHashSize(priv->dbusVMStates) > 0 &&
+        !virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DBUS_VMSTATE)) {
+        virReportError(VIR_ERR_OPERATION_INVALID, "%s",
+                       _("domain requires dbus-vmstate support"));
+        return false;
     }
 
     /* following checks don't make sense for offline migration */