[libvirt] [PATCH v2 13/17] qemu: assume support for all migration protocols except rdma

Daniel P. Berrange berrange at redhat.com
Mon Nov 9 16:24:35 UTC 2015


Since we require QEMU 0.12.0, we can assume that QEMU supports
all of the fd, tcp, unix and exec migration protocols.

Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
---
 src/qemu/qemu_capabilities.c                       | 34 +---------
 src/qemu/qemu_capabilities.h                       | 10 +--
 src/qemu/qemu_command.c                            | 44 +------------
 src/qemu/qemu_migration.c                          | 77 ++++++----------------
 tests/qemuargv2xmltest.c                           |  1 -
 tests/qemucapabilitiesdata/caps_1.2.2-1.caps       |  4 --
 tests/qemucapabilitiesdata/caps_1.3.1-1.caps       |  4 --
 tests/qemucapabilitiesdata/caps_1.4.2-1.caps       |  4 --
 tests/qemucapabilitiesdata/caps_1.5.3-1.caps       |  4 --
 tests/qemucapabilitiesdata/caps_1.6.0-1.caps       |  4 --
 tests/qemucapabilitiesdata/caps_1.6.50-1.caps      |  4 --
 tests/qemucapabilitiesdata/caps_2.1.1-1.caps       |  4 --
 tests/qemucaps2xmldata/all_1.6.0-1.caps            |  4 --
 tests/qemucaps2xmldata/nodisksnapshot_1.6.0-1.caps |  4 --
 tests/qemuhelptest.c                               | 32 ---------
 .../qemuxml2argv-migrate-numa-unaligned.args       |  2 +-
 .../qemuxml2argvdata/qemuxml2argv-restore-v1.args  | 23 -------
 tests/qemuxml2argvdata/qemuxml2argv-restore-v1.xml | 28 --------
 tests/qemuxml2argvtest.c                           | 13 ++--
 19 files changed, 33 insertions(+), 267 deletions(-)
 delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-restore-v1.args
 delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-restore-v1.xml

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index ae343cc..55c8b92 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -1081,7 +1081,6 @@ virCapsPtr virQEMUCapsInit(virQEMUCapsCachePtr cache)
 static int
 virQEMUCapsComputeCmdFlags(const char *help,
                            unsigned int version,
-                           unsigned int kvm_version,
                            virQEMUCapsPtr qemuCaps,
                            bool check_yajl ATTRIBUTE_UNUSED)
 {
@@ -1235,33 +1234,6 @@ virQEMUCapsComputeCmdFlags(const char *help,
     if (strstr(help, "-machine"))
         virQEMUCapsSet(qemuCaps, QEMU_CAPS_MACHINE_OPT);
 
-    /*
-     * Handling of -incoming arg with varying features
-     *  -incoming tcp    (kvm >= 79, qemu >= 0.10.0)
-     *  -incoming exec   (kvm >= 80, qemu >= 0.10.0)
-     *  -incoming unix   (qemu >= 0.12.0)
-     *  -incoming fd     (qemu >= 0.12.0)
-     *  -incoming stdio  (all earlier kvm)
-     *
-     * NB, there was a pre-kvm-79 'tcp' support, but it
-     * was broken, because it blocked the monitor console
-     * while waiting for data, so pretend it doesn't exist
-     */
-    if (version >= 10000) {
-        virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_TCP);
-        virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC);
-        if (version >= 12000) {
-            virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_UNIX);
-            virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_FD);
-        }
-    } else if (kvm_version >= 79) {
-        virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_TCP);
-        if (kvm_version >= 80)
-            virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC);
-    } else if (kvm_version > 0) {
-        virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_KVM_STDIO);
-    }
-
     if (version >= 10000)
         virQEMUCapsSet(qemuCaps, QEMU_CAPS_0_10);
 
@@ -1444,7 +1416,7 @@ int virQEMUCapsParseHelpStr(const char *qemu,
         goto cleanup;
     }
 
-    if (virQEMUCapsComputeCmdFlags(help, *version, *kvm_version,
+    if (virQEMUCapsComputeCmdFlags(help, *version,
                                    qemuCaps, check_yajl) < 0)
         goto cleanup;
 
@@ -3200,15 +3172,12 @@ static qemuMonitorCallbacks callbacks = {
 static void
 virQEMUCapsInitQMPBasic(virQEMUCapsPtr qemuCaps)
 {
-    virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_TCP);
-    virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_CACHE_V2);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_FORMAT);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_VGA);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_0_10);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_MEM_PATH);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_SERIAL);
-    virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_UNIX);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_CHARDEV);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_MONITOR_JSON);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_BALLOON);
@@ -3225,7 +3194,6 @@ virQEMUCapsInitQMPBasic(virQEMUCapsPtr qemuCaps)
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_READONLY);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_SMBIOS_TYPE);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_VGA_NONE);
-    virQEMUCapsSet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_FD);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_AIO);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_CHARDEV_SPICEVMC);
     virQEMUCapsSet(qemuCaps, QEMU_CAPS_DEVICE_QXL_VGA);
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index f5919d9..822cf0b 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -57,11 +57,11 @@ typedef enum {
     X_QEMU_CAPS_UUID, /* Is the -uuid flag available */
     X_QEMU_CAPS_DOMID, /* Xenner: -domid flag available */
     X_QEMU_CAPS_VNET_HDR,
-    QEMU_CAPS_MIGRATE_KVM_STDIO, /* avoid kvm tcp migration bug */
+    X_QEMU_CAPS_MIGRATE_KVM_STDIO, /* avoid kvm tcp migration bug */
 
     /* 10 */
-    QEMU_CAPS_MIGRATE_QEMU_TCP, /* have qemu tcp migration */
-    QEMU_CAPS_MIGRATE_QEMU_EXEC, /* have qemu exec migration */
+    X_QEMU_CAPS_MIGRATE_QEMU_TCP, /* have qemu tcp migration */
+    X_QEMU_CAPS_MIGRATE_QEMU_EXEC, /* have qemu exec migration */
     QEMU_CAPS_DRIVE_CACHE_V2, /* cache= flag wanting new v2 values */
     QEMU_CAPS_KVM, /* Whether KVM is enabled by default */
     QEMU_CAPS_DRIVE_FORMAT, /* Is -drive format= avail */
@@ -75,7 +75,7 @@ typedef enum {
 
     /* 20 */
     X_QEMU_CAPS_XEN_DOMID, /* -xen-domid */
-    QEMU_CAPS_MIGRATE_QEMU_UNIX, /* qemu migration via unix sockets */
+    X_QEMU_CAPS_MIGRATE_QEMU_UNIX, /* qemu migration via unix sockets */
     QEMU_CAPS_CHARDEV, /* Is the new -chardev arg available */
     QEMU_CAPS_ENABLE_KVM, /* -enable-kvm flag */
     QEMU_CAPS_MONITOR_JSON, /* JSON mode for monitor */
@@ -112,7 +112,7 @@ typedef enum {
     QEMU_CAPS_VGA_QXL, /* The 'qxl' arg for '-vga' */
     QEMU_CAPS_SPICE, /* Is -spice avail */
     QEMU_CAPS_VGA_NONE, /* The 'none' arg for '-vga' */
-    QEMU_CAPS_MIGRATE_QEMU_FD, /* -incoming fd:n */
+    X_QEMU_CAPS_MIGRATE_QEMU_FD, /* -incoming fd:n */
     QEMU_CAPS_BOOTINDEX, /* -device bootindex property */
 
     /* 50 */
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index d4cd127..82d6470 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -11064,18 +11064,9 @@ qemuBuildCommandLine(virConnectPtr conn,
         }
     }
 
-    /* Migration is very annoying due to wildly varying syntax &
-     * capabilities over time of KVM / QEMU codebases.
-     */
     if (migrateFrom) {
         virCommandAddArg(cmd, "-incoming");
         if (STRPREFIX(migrateFrom, "tcp")) {
-            if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_TCP)) {
-                virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                               "%s", _("TCP migration is not supported with "
-                                       "this QEMU binary"));
-                goto error;
-            }
             virCommandAddArg(cmd, migrateFrom);
         } else if (STRPREFIX(migrateFrom, "rdma")) {
             if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_RDMA)) {
@@ -11086,45 +11077,14 @@ qemuBuildCommandLine(virConnectPtr conn,
             }
             virCommandAddArg(cmd, migrateFrom);
         } else if (STREQ(migrateFrom, "stdio")) {
-            if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_FD)) {
-                virCommandAddArgFormat(cmd, "fd:%d", migrateFd);
-                virCommandPassFD(cmd, migrateFd, 0);
-            } else if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC)) {
-                virCommandAddArg(cmd, "exec:cat");
-                virCommandSetInputFD(cmd, migrateFd);
-            } else if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_KVM_STDIO)) {
-                virCommandAddArg(cmd, migrateFrom);
-                virCommandSetInputFD(cmd, migrateFd);
-            } else {
-                virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                               "%s", _("STDIO migration is not supported "
-                                       "with this QEMU binary"));
-                goto error;
-            }
+            virCommandAddArgFormat(cmd, "fd:%d", migrateFd);
+            virCommandPassFD(cmd, migrateFd, 0);
         } else if (STRPREFIX(migrateFrom, "exec")) {
-            if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC)) {
-                virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                               "%s", _("EXEC migration is not supported "
-                                       "with this QEMU binary"));
-                goto error;
-            }
             virCommandAddArg(cmd, migrateFrom);
         } else if (STRPREFIX(migrateFrom, "fd")) {
-            if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_FD)) {
-                virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                               "%s", _("FD migration is not supported "
-                                       "with this QEMU binary"));
-                goto error;
-            }
             virCommandAddArg(cmd, migrateFrom);
             virCommandPassFD(cmd, migrateFd, 0);
         } else if (STRPREFIX(migrateFrom, "unix")) {
-            if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_UNIX)) {
-                virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                               "%s", _("UNIX migration is not supported "
-                                       "with this QEMU binary"));
-                goto error;
-            }
             virCommandAddArg(cmd, migrateFrom);
         } else {
             virReportError(VIR_ERR_INTERNAL_ERROR,
diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
index e8ffde0..fca05e3 100644
--- a/src/qemu/qemu_migration.c
+++ b/src/qemu/qemu_migration.c
@@ -4359,15 +4359,8 @@ qemuMigrationRun(virQEMUDriverPtr driver,
         break;
 
     case MIGRATION_DEST_UNIX:
-        if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_UNIX)) {
-            ret = qemuMonitorMigrateToUnix(priv->mon, migrate_flags,
-                                           spec->dest.unix_socket.file);
-        } else {
-            const char *args[] = {
-                "nc", "-U", spec->dest.unix_socket.file, NULL
-            };
-            ret = qemuMonitorMigrateToCommand(priv->mon, migrate_flags, args);
-        }
+        ret = qemuMonitorMigrateToUnix(priv->mon, migrate_flags,
+                                       spec->dest.unix_socket.file);
         break;
 
     case MIGRATION_DEST_FD:
@@ -4562,8 +4555,7 @@ static int doNativeMigrate(virQEMUDriverPtr driver,
         }
     }
 
-    if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_FD) &&
-        STRNEQ(uribits->scheme, "rdma"))
+    if (STRNEQ(uribits->scheme, "rdma"))
         spec.destType = MIGRATION_DEST_CONNECT_HOST;
     else
         spec.destType = MIGRATION_DEST_HOST;
@@ -4600,11 +4592,11 @@ static int doTunnelMigrate(virQEMUDriverPtr driver,
                            size_t nmigrate_disks,
                            const char **migrate_disks)
 {
-    qemuDomainObjPrivatePtr priv = vm->privateData;
     virNetSocketPtr sock = NULL;
     int ret = -1;
     qemuMigrationSpec spec;
     virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver);
+    int fds[2];
 
     VIR_DEBUG("driver=%p, vm=%p, st=%p, cookiein=%s, cookieinlen=%d, "
               "cookieout=%p, cookieoutlen=%p, flags=%lx, resource=%lu, "
@@ -4613,53 +4605,24 @@ static int doTunnelMigrate(virQEMUDriverPtr driver,
               cookieout, cookieoutlen, flags, resource,
               NULLSTR(graphicsuri), nmigrate_disks, migrate_disks);
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_FD) &&
-        !virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_UNIX) &&
-        !virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC)) {
-        virReportError(VIR_ERR_OPERATION_FAILED, "%s",
-                       _("Source qemu is too old to support tunnelled migration"));
-        virObjectUnref(cfg);
-        return -1;
-    }
-
     spec.fwdType = MIGRATION_FWD_STREAM;
     spec.fwd.stream = st;
 
-    if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_FD)) {
-        int fds[2];
-
-        spec.destType = MIGRATION_DEST_FD;
-        spec.dest.fd.qemu = -1;
-        spec.dest.fd.local = -1;
-
-        if (pipe2(fds, O_CLOEXEC) == 0) {
-            spec.dest.fd.qemu = fds[1];
-            spec.dest.fd.local = fds[0];
-        }
-        if (spec.dest.fd.qemu == -1 ||
-            virSecurityManagerSetImageFDLabel(driver->securityManager, vm->def,
-                                              spec.dest.fd.qemu) < 0) {
-            virReportSystemError(errno, "%s",
-                        _("cannot create pipe for tunnelled migration"));
-            goto cleanup;
-        }
-    } else {
-        spec.destType = MIGRATION_DEST_UNIX;
-        spec.dest.unix_socket.sock = -1;
-        spec.dest.unix_socket.file = NULL;
-
-        if (virAsprintf(&spec.dest.unix_socket.file,
-                        "%s/qemu.tunnelmigrate.src.%s",
-                        cfg->libDir, vm->def->name) < 0)
-            goto cleanup;
 
-        if (virNetSocketNewListenUNIX(spec.dest.unix_socket.file, 0700,
-                                      cfg->user, cfg->group,
-                                      &sock) < 0 ||
-            virNetSocketListen(sock, 1) < 0)
-            goto cleanup;
+    spec.destType = MIGRATION_DEST_FD;
+    spec.dest.fd.qemu = -1;
+    spec.dest.fd.local = -1;
 
-        spec.dest.unix_socket.sock = virNetSocketGetFD(sock);
+    if (pipe2(fds, O_CLOEXEC) == 0) {
+        spec.dest.fd.qemu = fds[1];
+        spec.dest.fd.local = fds[0];
+    }
+    if (spec.dest.fd.qemu == -1 ||
+        virSecurityManagerSetImageFDLabel(driver->securityManager, vm->def,
+                                          spec.dest.fd.qemu) < 0) {
+        virReportSystemError(errno, "%s",
+                             _("cannot create pipe for tunnelled migration"));
+        goto cleanup;
     }
 
     ret = qemuMigrationRun(driver, vm, cookiein, cookieinlen, cookieout,
@@ -5943,8 +5906,7 @@ qemuMigrationToFile(virQEMUDriverPtr driver, virDomainObjPtr vm,
         return -1;
     }
 
-    if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_FD) &&
-        (!compressor || pipe(pipeFD) == 0)) {
+    if ((!compressor || pipe(pipeFD) == 0)) {
         /* All right! We can use fd migration, which means that qemu
          * doesn't have to open() the file, so while we still have to
          * grant SELinux access, we can do it on fd and avoid cleanup
@@ -5983,8 +5945,7 @@ qemuMigrationToFile(virQEMUDriverPtr driver, virDomainObjPtr vm,
     if (!compressor) {
         const char *args[] = { "cat", NULL };
 
-        if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_FD) &&
-            priv->monConfig->type == VIR_DOMAIN_CHR_TYPE_UNIX) {
+        if (priv->monConfig->type == VIR_DOMAIN_CHR_TYPE_UNIX) {
             rc = qemuMonitorMigrateToFd(priv->mon,
                                         QEMU_MONITOR_MIGRATE_BACKGROUND,
                                         fd);
diff --git a/tests/qemuargv2xmltest.c b/tests/qemuargv2xmltest.c
index 96453e5..01670c7 100644
--- a/tests/qemuargv2xmltest.c
+++ b/tests/qemuargv2xmltest.c
@@ -280,7 +280,6 @@ mymain(void)
 
     DO_TEST("nosharepages");
 
-    DO_TEST("restore-v1");
     DO_TEST("restore-v2");
     DO_TEST("migrate");
 
diff --git a/tests/qemucapabilitiesdata/caps_1.2.2-1.caps b/tests/qemucapabilitiesdata/caps_1.2.2-1.caps
index c149b6c..e83b956 100644
--- a/tests/qemucapabilitiesdata/caps_1.2.2-1.caps
+++ b/tests/qemucapabilitiesdata/caps_1.2.2-1.caps
@@ -1,13 +1,10 @@
   <qemuCaps>
-    <flag name='migrate-qemu-tcp'/>
-    <flag name='migrate-qemu-exec'/>
     <flag name='drive-cache-v2'/>
     <flag name='drive-format'/>
     <flag name='vga'/>
     <flag name='0.10'/>
     <flag name='mem-path'/>
     <flag name='drive-serial'/>
-    <flag name='migrate-qemu-unix'/>
     <flag name='chardev'/>
     <flag name='enable-kvm'/>
     <flag name='monitor-json'/>
@@ -29,7 +26,6 @@
     <flag name='vga-qxl'/>
     <flag name='spice'/>
     <flag name='vga-none'/>
-    <flag name='migrate-qemu-fd'/>
     <flag name='boot-index'/>
     <flag name='hda-duplex'/>
     <flag name='drive-aio'/>
diff --git a/tests/qemucapabilitiesdata/caps_1.3.1-1.caps b/tests/qemucapabilitiesdata/caps_1.3.1-1.caps
index 8425e43..9dc91cd 100644
--- a/tests/qemucapabilitiesdata/caps_1.3.1-1.caps
+++ b/tests/qemucapabilitiesdata/caps_1.3.1-1.caps
@@ -1,13 +1,10 @@
   <qemuCaps>
-    <flag name='migrate-qemu-tcp'/>
-    <flag name='migrate-qemu-exec'/>
     <flag name='drive-cache-v2'/>
     <flag name='drive-format'/>
     <flag name='vga'/>
     <flag name='0.10'/>
     <flag name='mem-path'/>
     <flag name='drive-serial'/>
-    <flag name='migrate-qemu-unix'/>
     <flag name='chardev'/>
     <flag name='enable-kvm'/>
     <flag name='monitor-json'/>
@@ -30,7 +27,6 @@
     <flag name='vga-qxl'/>
     <flag name='spice'/>
     <flag name='vga-none'/>
-    <flag name='migrate-qemu-fd'/>
     <flag name='boot-index'/>
     <flag name='hda-duplex'/>
     <flag name='drive-aio'/>
diff --git a/tests/qemucapabilitiesdata/caps_1.4.2-1.caps b/tests/qemucapabilitiesdata/caps_1.4.2-1.caps
index 2b86eba..63e1f47 100644
--- a/tests/qemucapabilitiesdata/caps_1.4.2-1.caps
+++ b/tests/qemucapabilitiesdata/caps_1.4.2-1.caps
@@ -1,13 +1,10 @@
   <qemuCaps>
-    <flag name='migrate-qemu-tcp'/>
-    <flag name='migrate-qemu-exec'/>
     <flag name='drive-cache-v2'/>
     <flag name='drive-format'/>
     <flag name='vga'/>
     <flag name='0.10'/>
     <flag name='mem-path'/>
     <flag name='drive-serial'/>
-    <flag name='migrate-qemu-unix'/>
     <flag name='chardev'/>
     <flag name='enable-kvm'/>
     <flag name='monitor-json'/>
@@ -30,7 +27,6 @@
     <flag name='vga-qxl'/>
     <flag name='spice'/>
     <flag name='vga-none'/>
-    <flag name='migrate-qemu-fd'/>
     <flag name='boot-index'/>
     <flag name='hda-duplex'/>
     <flag name='drive-aio'/>
diff --git a/tests/qemucapabilitiesdata/caps_1.5.3-1.caps b/tests/qemucapabilitiesdata/caps_1.5.3-1.caps
index 39133a1..c7c363e 100644
--- a/tests/qemucapabilitiesdata/caps_1.5.3-1.caps
+++ b/tests/qemucapabilitiesdata/caps_1.5.3-1.caps
@@ -1,13 +1,10 @@
   <qemuCaps>
-    <flag name='migrate-qemu-tcp'/>
-    <flag name='migrate-qemu-exec'/>
     <flag name='drive-cache-v2'/>
     <flag name='drive-format'/>
     <flag name='vga'/>
     <flag name='0.10'/>
     <flag name='mem-path'/>
     <flag name='drive-serial'/>
-    <flag name='migrate-qemu-unix'/>
     <flag name='chardev'/>
     <flag name='enable-kvm'/>
     <flag name='monitor-json'/>
@@ -30,7 +27,6 @@
     <flag name='vga-qxl'/>
     <flag name='spice'/>
     <flag name='vga-none'/>
-    <flag name='migrate-qemu-fd'/>
     <flag name='boot-index'/>
     <flag name='hda-duplex'/>
     <flag name='drive-aio'/>
diff --git a/tests/qemucapabilitiesdata/caps_1.6.0-1.caps b/tests/qemucapabilitiesdata/caps_1.6.0-1.caps
index 50f5af1..694f671 100644
--- a/tests/qemucapabilitiesdata/caps_1.6.0-1.caps
+++ b/tests/qemucapabilitiesdata/caps_1.6.0-1.caps
@@ -1,13 +1,10 @@
   <qemuCaps>
-    <flag name='migrate-qemu-tcp'/>
-    <flag name='migrate-qemu-exec'/>
     <flag name='drive-cache-v2'/>
     <flag name='drive-format'/>
     <flag name='vga'/>
     <flag name='0.10'/>
     <flag name='mem-path'/>
     <flag name='drive-serial'/>
-    <flag name='migrate-qemu-unix'/>
     <flag name='chardev'/>
     <flag name='enable-kvm'/>
     <flag name='monitor-json'/>
@@ -30,7 +27,6 @@
     <flag name='vga-qxl'/>
     <flag name='spice'/>
     <flag name='vga-none'/>
-    <flag name='migrate-qemu-fd'/>
     <flag name='boot-index'/>
     <flag name='hda-duplex'/>
     <flag name='drive-aio'/>
diff --git a/tests/qemucapabilitiesdata/caps_1.6.50-1.caps b/tests/qemucapabilitiesdata/caps_1.6.50-1.caps
index c339dae..69f4a1d 100644
--- a/tests/qemucapabilitiesdata/caps_1.6.50-1.caps
+++ b/tests/qemucapabilitiesdata/caps_1.6.50-1.caps
@@ -1,13 +1,10 @@
   <qemuCaps>
-    <flag name='migrate-qemu-tcp'/>
-    <flag name='migrate-qemu-exec'/>
     <flag name='drive-cache-v2'/>
     <flag name='drive-format'/>
     <flag name='vga'/>
     <flag name='0.10'/>
     <flag name='mem-path'/>
     <flag name='drive-serial'/>
-    <flag name='migrate-qemu-unix'/>
     <flag name='chardev'/>
     <flag name='enable-kvm'/>
     <flag name='monitor-json'/>
@@ -30,7 +27,6 @@
     <flag name='vga-qxl'/>
     <flag name='spice'/>
     <flag name='vga-none'/>
-    <flag name='migrate-qemu-fd'/>
     <flag name='boot-index'/>
     <flag name='hda-duplex'/>
     <flag name='drive-aio'/>
diff --git a/tests/qemucapabilitiesdata/caps_2.1.1-1.caps b/tests/qemucapabilitiesdata/caps_2.1.1-1.caps
index 6c5a32c..c0baf7d 100644
--- a/tests/qemucapabilitiesdata/caps_2.1.1-1.caps
+++ b/tests/qemucapabilitiesdata/caps_2.1.1-1.caps
@@ -1,13 +1,10 @@
   <qemuCaps>
-    <flag name='migrate-qemu-tcp'/>
-    <flag name='migrate-qemu-exec'/>
     <flag name='drive-cache-v2'/>
     <flag name='drive-format'/>
     <flag name='vga'/>
     <flag name='0.10'/>
     <flag name='mem-path'/>
     <flag name='drive-serial'/>
-    <flag name='migrate-qemu-unix'/>
     <flag name='chardev'/>
     <flag name='enable-kvm'/>
     <flag name='monitor-json'/>
@@ -30,7 +27,6 @@
     <flag name='vga-qxl'/>
     <flag name='spice'/>
     <flag name='vga-none'/>
-    <flag name='migrate-qemu-fd'/>
     <flag name='boot-index'/>
     <flag name='hda-duplex'/>
     <flag name='drive-aio'/>
diff --git a/tests/qemucaps2xmldata/all_1.6.0-1.caps b/tests/qemucaps2xmldata/all_1.6.0-1.caps
index 0f6c22a..62dc749 100644
--- a/tests/qemucaps2xmldata/all_1.6.0-1.caps
+++ b/tests/qemucaps2xmldata/all_1.6.0-1.caps
@@ -1,13 +1,10 @@
   <qemuCaps>
-    <flag name='migrate-qemu-tcp'/>
-    <flag name='migrate-qemu-exec'/>
     <flag name='drive-cache-v2'/>
     <flag name='drive-format'/>
     <flag name='vga'/>
     <flag name='0.10'/>
     <flag name='mem-path'/>
     <flag name='drive-serial'/>
-    <flag name='migrate-qemu-unix'/>
     <flag name='chardev'/>
     <flag name='enable-kvm'/>
     <flag name='monitor-json'/>
@@ -30,7 +27,6 @@
     <flag name='vga-qxl'/>
     <flag name='spice'/>
     <flag name='vga-none'/>
-    <flag name='migrate-qemu-fd'/>
     <flag name='boot-index'/>
     <flag name='hda-duplex'/>
     <flag name='drive-aio'/>
diff --git a/tests/qemucaps2xmldata/nodisksnapshot_1.6.0-1.caps b/tests/qemucaps2xmldata/nodisksnapshot_1.6.0-1.caps
index 15f67d4..fcd91a8 100644
--- a/tests/qemucaps2xmldata/nodisksnapshot_1.6.0-1.caps
+++ b/tests/qemucaps2xmldata/nodisksnapshot_1.6.0-1.caps
@@ -1,13 +1,10 @@
   <qemuCaps>
-    <flag name='migrate-qemu-tcp'/>
-    <flag name='migrate-qemu-exec'/>
     <flag name='drive-cache-v2'/>
     <flag name='drive-format'/>
     <flag name='vga'/>
     <flag name='0.10'/>
     <flag name='mem-path'/>
     <flag name='drive-serial'/>
-    <flag name='migrate-qemu-unix'/>
     <flag name='chardev'/>
     <flag name='enable-kvm'/>
     <flag name='monitor-json'/>
@@ -30,7 +27,6 @@
     <flag name='vga-qxl'/>
     <flag name='spice'/>
     <flag name='vga-none'/>
-    <flag name='migrate-qemu-fd'/>
     <flag name='boot-index'/>
     <flag name='hda-duplex'/>
     <flag name='drive-aio'/>
diff --git a/tests/qemuhelptest.c b/tests/qemuhelptest.c
index 7bc52f1..0745b1d 100644
--- a/tests/qemuhelptest.c
+++ b/tests/qemuhelptest.c
@@ -152,8 +152,6 @@ mymain(void)
     DO_TEST_FULL(name, version, is_kvm, kvm_version, VIR_ERR_OK, __VA_ARGS__)
 
     DO_TEST("qemu-0.12.1", 12001, 0, 0,
-            QEMU_CAPS_MIGRATE_QEMU_TCP,
-            QEMU_CAPS_MIGRATE_QEMU_EXEC,
             QEMU_CAPS_DRIVE_CACHE_V2,
             QEMU_CAPS_DRIVE_FORMAT,
             QEMU_CAPS_DRIVE_SERIAL,
@@ -162,7 +160,6 @@ mymain(void)
             QEMU_CAPS_0_10,
             QEMU_CAPS_ENABLE_KVM,
             QEMU_CAPS_SDL,
-            QEMU_CAPS_MIGRATE_QEMU_UNIX,
             QEMU_CAPS_CHARDEV,
             QEMU_CAPS_BALLOON,
             QEMU_CAPS_DEVICE,
@@ -173,7 +170,6 @@ mymain(void)
             QEMU_CAPS_NAME_PROCESS,
             QEMU_CAPS_SMBIOS_TYPE,
             QEMU_CAPS_VGA_NONE,
-            QEMU_CAPS_MIGRATE_QEMU_FD,
             QEMU_CAPS_DRIVE_AIO,
             QEMU_CAPS_NO_SHUTDOWN,
             QEMU_CAPS_PCI_ROMBAR,
@@ -183,8 +179,6 @@ mymain(void)
             QEMU_CAPS_VNC);
     DO_TEST("qemu-kvm-0.12.1.2-rhel60", 12001, 1, 0,
             QEMU_CAPS_DRIVE_BOOT,
-            QEMU_CAPS_MIGRATE_QEMU_TCP,
-            QEMU_CAPS_MIGRATE_QEMU_EXEC,
             QEMU_CAPS_DRIVE_CACHE_V2,
             QEMU_CAPS_KVM,
             QEMU_CAPS_DRIVE_FORMAT,
@@ -194,7 +188,6 @@ mymain(void)
             QEMU_CAPS_0_10,
             QEMU_CAPS_PCIDEVICE,
             QEMU_CAPS_MEM_PATH,
-            QEMU_CAPS_MIGRATE_QEMU_UNIX,
             QEMU_CAPS_CHARDEV,
             QEMU_CAPS_ENABLE_KVM,
             QEMU_CAPS_MONITOR_JSON,
@@ -215,7 +208,6 @@ mymain(void)
             QEMU_CAPS_VGA_QXL,
             QEMU_CAPS_SPICE,
             QEMU_CAPS_VGA_NONE,
-            QEMU_CAPS_MIGRATE_QEMU_FD,
             QEMU_CAPS_DRIVE_AIO,
             QEMU_CAPS_DEVICE_SPICEVMC,
             QEMU_CAPS_PIIX3_USB_UHCI,
@@ -240,8 +232,6 @@ mymain(void)
             QEMU_CAPS_DEVICE_VIRTIO_NET);
     DO_TEST("qemu-kvm-0.12.3", 12003, 1, 0,
             QEMU_CAPS_DRIVE_BOOT,
-            QEMU_CAPS_MIGRATE_QEMU_TCP,
-            QEMU_CAPS_MIGRATE_QEMU_EXEC,
             QEMU_CAPS_DRIVE_CACHE_V2,
             QEMU_CAPS_KVM,
             QEMU_CAPS_DRIVE_FORMAT,
@@ -252,7 +242,6 @@ mymain(void)
             QEMU_CAPS_PCIDEVICE,
             QEMU_CAPS_MEM_PATH,
             QEMU_CAPS_SDL,
-            QEMU_CAPS_MIGRATE_QEMU_UNIX,
             QEMU_CAPS_CHARDEV,
             QEMU_CAPS_BALLOON,
             QEMU_CAPS_DEVICE,
@@ -267,7 +256,6 @@ mymain(void)
             QEMU_CAPS_NAME_PROCESS,
             QEMU_CAPS_SMBIOS_TYPE,
             QEMU_CAPS_VGA_NONE,
-            QEMU_CAPS_MIGRATE_QEMU_FD,
             QEMU_CAPS_DRIVE_AIO,
             QEMU_CAPS_NO_SHUTDOWN,
             QEMU_CAPS_PCI_ROMBAR,
@@ -277,8 +265,6 @@ mymain(void)
             QEMU_CAPS_VNC);
     DO_TEST("qemu-kvm-0.13.0", 13000, 1, 0,
             QEMU_CAPS_DRIVE_BOOT,
-            QEMU_CAPS_MIGRATE_QEMU_TCP,
-            QEMU_CAPS_MIGRATE_QEMU_EXEC,
             QEMU_CAPS_DRIVE_CACHE_V2,
             QEMU_CAPS_DRIVE_CACHE_UNSAFE,
             QEMU_CAPS_KVM,
@@ -290,7 +276,6 @@ mymain(void)
             QEMU_CAPS_PCIDEVICE,
             QEMU_CAPS_MEM_PATH,
             QEMU_CAPS_SDL,
-            QEMU_CAPS_MIGRATE_QEMU_UNIX,
             QEMU_CAPS_CHARDEV,
             QEMU_CAPS_ENABLE_KVM,
             QEMU_CAPS_MONITOR_JSON,
@@ -312,7 +297,6 @@ mymain(void)
             QEMU_CAPS_SMBIOS_TYPE,
             QEMU_CAPS_SPICE,
             QEMU_CAPS_VGA_NONE,
-            QEMU_CAPS_MIGRATE_QEMU_FD,
             QEMU_CAPS_DRIVE_AIO,
             QEMU_CAPS_DEVICE_SPICEVMC,
             QEMU_CAPS_PCI_MULTIFUNCTION,
@@ -344,8 +328,6 @@ mymain(void)
             QEMU_CAPS_DEVICE_E1000,
             QEMU_CAPS_DEVICE_VIRTIO_NET);
     DO_TEST("qemu-kvm-0.12.1.2-rhel61", 12001, 1, 0,
-            QEMU_CAPS_MIGRATE_QEMU_TCP,
-            QEMU_CAPS_MIGRATE_QEMU_EXEC,
             QEMU_CAPS_DRIVE_CACHE_V2,
             QEMU_CAPS_DRIVE_CACHE_UNSAFE,
             QEMU_CAPS_KVM,
@@ -356,7 +338,6 @@ mymain(void)
             QEMU_CAPS_0_10,
             QEMU_CAPS_PCIDEVICE,
             QEMU_CAPS_MEM_PATH,
-            QEMU_CAPS_MIGRATE_QEMU_UNIX,
             QEMU_CAPS_CHARDEV,
             QEMU_CAPS_ENABLE_KVM,
             QEMU_CAPS_MONITOR_JSON,
@@ -377,7 +358,6 @@ mymain(void)
             QEMU_CAPS_VGA_QXL,
             QEMU_CAPS_SPICE,
             QEMU_CAPS_VGA_NONE,
-            QEMU_CAPS_MIGRATE_QEMU_FD,
             QEMU_CAPS_HDA_DUPLEX,
             QEMU_CAPS_DRIVE_AIO,
             QEMU_CAPS_CCID_PASSTHRU,
@@ -408,8 +388,6 @@ mymain(void)
             QEMU_CAPS_DEVICE_E1000,
             QEMU_CAPS_DEVICE_VIRTIO_NET);
     DO_TEST("qemu-kvm-0.12.1.2-rhel62-beta", 12001, 1, 0,
-            QEMU_CAPS_MIGRATE_QEMU_TCP,
-            QEMU_CAPS_MIGRATE_QEMU_EXEC,
             QEMU_CAPS_DRIVE_CACHE_V2,
             QEMU_CAPS_DRIVE_CACHE_UNSAFE,
             QEMU_CAPS_KVM,
@@ -420,7 +398,6 @@ mymain(void)
             QEMU_CAPS_0_10,
             QEMU_CAPS_PCIDEVICE,
             QEMU_CAPS_MEM_PATH,
-            QEMU_CAPS_MIGRATE_QEMU_UNIX,
             QEMU_CAPS_CHARDEV,
             QEMU_CAPS_ENABLE_KVM,
             QEMU_CAPS_BALLOON,
@@ -440,7 +417,6 @@ mymain(void)
             QEMU_CAPS_VGA_QXL,
             QEMU_CAPS_SPICE,
             QEMU_CAPS_VGA_NONE,
-            QEMU_CAPS_MIGRATE_QEMU_FD,
             QEMU_CAPS_BOOTINDEX,
             QEMU_CAPS_HDA_DUPLEX,
             QEMU_CAPS_DRIVE_AIO,
@@ -480,8 +456,6 @@ mymain(void)
             QEMU_CAPS_DEVICE_E1000,
             QEMU_CAPS_DEVICE_VIRTIO_NET);
     DO_TEST("qemu-1.0", 1000000, 0, 0,
-            QEMU_CAPS_MIGRATE_QEMU_TCP,
-            QEMU_CAPS_MIGRATE_QEMU_EXEC,
             QEMU_CAPS_DRIVE_CACHE_V2,
             QEMU_CAPS_DRIVE_CACHE_UNSAFE,
             QEMU_CAPS_DRIVE_FORMAT,
@@ -491,7 +465,6 @@ mymain(void)
             QEMU_CAPS_0_10,
             QEMU_CAPS_MEM_PATH,
             QEMU_CAPS_SDL,
-            QEMU_CAPS_MIGRATE_QEMU_UNIX,
             QEMU_CAPS_CHARDEV,
             QEMU_CAPS_ENABLE_KVM,
             QEMU_CAPS_MONITOR_JSON,
@@ -510,7 +483,6 @@ mymain(void)
             QEMU_CAPS_VGA_QXL,
             QEMU_CAPS_SPICE,
             QEMU_CAPS_VGA_NONE,
-            QEMU_CAPS_MIGRATE_QEMU_FD,
             QEMU_CAPS_BOOTINDEX,
             QEMU_CAPS_HDA_DUPLEX,
             QEMU_CAPS_DRIVE_AIO,
@@ -567,8 +539,6 @@ mymain(void)
             QEMU_CAPS_DEVICE_E1000,
             QEMU_CAPS_DEVICE_VIRTIO_NET);
     DO_TEST("qemu-1.1.0", 1001000, 0, 0,
-            QEMU_CAPS_MIGRATE_QEMU_TCP,
-            QEMU_CAPS_MIGRATE_QEMU_EXEC,
             QEMU_CAPS_DRIVE_CACHE_V2,
             QEMU_CAPS_DRIVE_CACHE_UNSAFE,
             QEMU_CAPS_DRIVE_FORMAT,
@@ -578,7 +548,6 @@ mymain(void)
             QEMU_CAPS_0_10,
             QEMU_CAPS_MEM_PATH,
             QEMU_CAPS_SDL,
-            QEMU_CAPS_MIGRATE_QEMU_UNIX,
             QEMU_CAPS_CHARDEV,
             QEMU_CAPS_ENABLE_KVM,
             QEMU_CAPS_MONITOR_JSON,
@@ -597,7 +566,6 @@ mymain(void)
             QEMU_CAPS_VGA_QXL,
             QEMU_CAPS_SPICE,
             QEMU_CAPS_VGA_NONE,
-            QEMU_CAPS_MIGRATE_QEMU_FD,
             QEMU_CAPS_BOOTINDEX,
             QEMU_CAPS_HDA_DUPLEX,
             QEMU_CAPS_DRIVE_AIO,
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-migrate-numa-unaligned.args b/tests/qemuxml2argvdata/qemuxml2argv-migrate-numa-unaligned.args
index 3cf3205..0f30899 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-migrate-numa-unaligned.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-migrate-numa-unaligned.args
@@ -28,4 +28,4 @@ host-nodes=5,host-nodes=7,policy=bind \
 -net none \
 -serial none \
 -parallel none \
--incoming stdio
+-incoming fd:7
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-restore-v1.args b/tests/qemuxml2argvdata/qemuxml2argv-restore-v1.args
deleted file mode 100644
index 017d19c..0000000
--- a/tests/qemuxml2argvdata/qemuxml2argv-restore-v1.args
+++ /dev/null
@@ -1,23 +0,0 @@
-LC_ALL=C \
-PATH=/bin \
-HOME=/home/test \
-USER=test \
-LOGNAME=test \
-QEMU_AUDIO_DRV=none \
-/usr/bin/qemu \
--name QEMUGuest1 \
--S \
--M pc \
--m 213 \
--smp 1 \
--uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
--nographic \
--monitor unix:/tmp/test-monitor,server,nowait \
--no-acpi \
--boot c \
--usb \
--drive file=/dev/HostVG/QEMUGuest1,if=ide,bus=0,unit=0 \
--net none \
--serial none \
--parallel none \
--incoming stdio
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-restore-v1.xml b/tests/qemuxml2argvdata/qemuxml2argv-restore-v1.xml
deleted file mode 100644
index b40ca80..0000000
--- a/tests/qemuxml2argvdata/qemuxml2argv-restore-v1.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<domain type='qemu'>
-  <name>QEMUGuest1</name>
-  <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid>
-  <memory unit='KiB'>219100</memory>
-  <currentMemory unit='KiB'>219100</currentMemory>
-  <vcpu placement='static'>1</vcpu>
-  <os>
-    <type arch='i686' machine='pc'>hvm</type>
-    <boot dev='hd'/>
-  </os>
-  <clock offset='utc'/>
-  <on_poweroff>destroy</on_poweroff>
-  <on_reboot>restart</on_reboot>
-  <on_crash>destroy</on_crash>
-  <devices>
-    <emulator>/usr/bin/qemu</emulator>
-    <disk type='block' device='disk'>
-      <driver name='qemu' type='raw'/>
-      <source dev='/dev/HostVG/QEMUGuest1'/>
-      <target dev='hda' bus='ide'/>
-      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
-    </disk>
-    <controller type='usb' index='0'/>
-    <controller type='ide' index='0'/>
-    <controller type='pci' index='0' model='pci-root'/>
-    <memballoon model='none'/>
-  </devices>
-</domain>
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
index 3d7bca8..081d92a 100644
--- a/tests/qemuxml2argvtest.c
+++ b/tests/qemuxml2argvtest.c
@@ -1255,16 +1255,13 @@ mymain(void)
             QEMU_CAPS_PCIDEVICE, QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG,
             QEMU_CAPS_PCI_ROMBAR);
 
-    DO_TEST_FULL("restore-v1", "stdio", 7, 0, QEMU_CAPS_MIGRATE_KVM_STDIO);
-    DO_TEST_FULL("restore-v2", "stdio", 7, 0, QEMU_CAPS_MIGRATE_QEMU_EXEC);
-    DO_TEST_FULL("restore-v2", "exec:cat", 7, 0, QEMU_CAPS_MIGRATE_QEMU_EXEC);
-    DO_TEST_FULL("restore-v2-fd", "stdio", 7, 0, QEMU_CAPS_MIGRATE_QEMU_FD);
-    DO_TEST_FULL("restore-v2-fd", "fd:7", 7, 0, QEMU_CAPS_MIGRATE_QEMU_FD);
-    DO_TEST_FULL("migrate", "tcp:10.0.0.1:5000", -1, 0,
-            QEMU_CAPS_MIGRATE_QEMU_TCP);
+    DO_TEST_FULL("restore-v2", "exec:cat", 7, 0, NONE);
+    DO_TEST_FULL("restore-v2-fd", "stdio", 7, 0, NONE);
+    DO_TEST_FULL("restore-v2-fd", "fd:7", 7, 0, NONE);
+    DO_TEST_FULL("migrate", "tcp:10.0.0.1:5000", -1, 0, NONE);
 
     DO_TEST_LINUX_FULL("migrate-numa-unaligned", "stdio", 7, 0,
-                       QEMU_CAPS_MIGRATE_KVM_STDIO, QEMU_CAPS_NUMA,
+                       QEMU_CAPS_NUMA,
                        QEMU_CAPS_OBJECT_MEMORY_RAM);
 
     DO_TEST("qemu-ns", NONE);
-- 
2.5.0




More information about the libvir-list mailing list