]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: skip QMP probing of CPU definitions when missing
authorGuido Günther <agx@sigxcpu.org>
Thu, 16 Mar 2017 08:19:02 +0000 (09:19 +0100)
committerGuido Günther <agx@sigxcpu.org>
Fri, 17 Mar 2017 09:51:49 +0000 (10:51 +0100)
This unbreaks emulators that don't support this command such as
qemu-system-mips*.

Reference: http://bugs.debian.org/854125

20 files changed:
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
tests/qemucapabilitiesdata/caps_1.2.2.x86_64.xml
tests/qemucapabilitiesdata/caps_1.3.1.x86_64.xml
tests/qemucapabilitiesdata/caps_1.4.2.x86_64.xml
tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml
tests/qemucapabilitiesdata/caps_1.6.0.x86_64.xml
tests/qemucapabilitiesdata/caps_1.7.0.x86_64.xml
tests/qemucapabilitiesdata/caps_2.1.1.x86_64.xml
tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml
tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml
tests/qemucapabilitiesdata/caps_2.6.0-gicv2.aarch64.xml
tests/qemucapabilitiesdata/caps_2.6.0-gicv3.aarch64.xml
tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml
tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml
tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml
tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml
tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml
tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml
tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml

index b85ca71d1bf73616896ced05e12821face0de2fc..60ed31ef9d9bd36b7917b16e9e2604695c46a3e0 100644 (file)
@@ -361,6 +361,8 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
               "spice-rendernode",
               "nvdimm",
               "pcie-root-port",
+
+              "query-cpu-definitions", /* 250 */
     );
 
 
@@ -1518,6 +1520,7 @@ struct virQEMUCapsStringFlags virQEMUCapsCommands[] = {
     { "query-hotpluggable-cpus", QEMU_CAPS_QUERY_HOTPLUGGABLE_CPUS },
     { "query-qmp-schema", QEMU_CAPS_QUERY_QMP_SCHEMA },
     { "query-cpu-model-expansion", QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION},
+    { "query-cpu-definitions", QEMU_CAPS_QUERY_CPU_DEFINITIONS},
 };
 
 struct virQEMUCapsStringFlags virQEMUCapsMigration[] = {
@@ -2796,6 +2799,9 @@ virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qemuCaps,
     int ret = -1;
     size_t i;
 
+    if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_DEFINITIONS))
+        return 0;
+
     if ((ncpus = qemuMonitorGetCPUDefinitions(mon, &cpus)) < 0)
         return -1;
 
index ca8a5173c53e5406164eb313f599bdd9a771e9ce..55777f979b210c803b0dd2a62ebf32cd9f44caa6 100644 (file)
@@ -397,6 +397,9 @@ typedef enum {
     QEMU_CAPS_DEVICE_NVDIMM, /* -device nvdimm */
     QEMU_CAPS_DEVICE_PCIE_ROOT_PORT, /* -device pcie-root-port */
 
+    /* 250 */
+    QEMU_CAPS_QUERY_CPU_DEFINITIONS, /* qmp query-cpu-definitions */
+
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
 
index f258c5fd3ccd7fd980fea0d2655e5d6843f5af9f..5ad406ce1b4afc538e7ad86589b24590ab35a085 100644 (file)
   <flag name='qxl.vram64_size_mb'/>
   <flag name='device-tray-moved-event'/>
   <flag name='display'/>
+  <flag name='query-cpu-definitions'/>
   <version>1002002</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index bc76818d4f1472f079a273bd68282598642b991f..4ec731d6555ee910bf696a5eea2788c6029164fb 100644 (file)
   <flag name='device-tray-moved-event'/>
   <flag name='nec-usb-xhci-ports'/>
   <flag name='display'/>
+  <flag name='query-cpu-definitions'/>
   <version>1003001</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index ef4840003ce1337b6d305b35359153539a25a6b9..601c62e65a3b8cb19dd0eabb732fb5b77d9321aa 100644 (file)
   <flag name='device-tray-moved-event'/>
   <flag name='nec-usb-xhci-ports'/>
   <flag name='display'/>
+  <flag name='query-cpu-definitions'/>
   <version>1004002</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index 96b6fdb45b043ca2077ac739cf6a3b61ac68134c..a68c13bbd5a86c65fe067bbf88b335693a7b7602 100644 (file)
   <flag name='nec-usb-xhci-ports'/>
   <flag name='display'/>
   <flag name='vhost-scsi'/>
+  <flag name='query-cpu-definitions'/>
   <version>1005003</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index 5181d853ec2ada359d6258ad80d092d99e114d1b..365b3a650511a39fa45acb74ecc788fd3316237d 100644 (file)
   <flag name='nec-usb-xhci-ports'/>
   <flag name='display'/>
   <flag name='vhost-scsi'/>
+  <flag name='query-cpu-definitions'/>
   <version>1006000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index 3fbc2567625e23cf1325e92898bc5f18b5a994ac..689fbf82c0325aba7085ed068c770cd85f5c28f5 100644 (file)
   <flag name='nec-usb-xhci-ports'/>
   <flag name='display'/>
   <flag name='vhost-scsi'/>
+  <flag name='query-cpu-definitions'/>
   <version>1007000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index f3635d9a0508505d5c5182d485be44f7bbdeab40..211c0bf6e385c94fbceedc00af78dc8a0d5babba 100644 (file)
   <flag name='drive-detect-zeroes'/>
   <flag name='display'/>
   <flag name='vhost-scsi'/>
+  <flag name='query-cpu-definitions'/>
   <version>2001001</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index b1b9e1571d20faacb81deeb3ae9b7467fee778a4..a348bc3d17c9af4cee76a3b6918e548d36479ebe 100644 (file)
   <flag name='virtio-vga'/>
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
+  <flag name='query-cpu-definitions'/>
   <version>2004000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index 2e23a93d6a6c4223aee56875c7087a23504d90c4..f198715a0c163a97ad61d204225de04e938a070b 100644 (file)
   <flag name='query-qmp-schema'/>
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
+  <flag name='query-cpu-definitions'/>
   <version>2005000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index 0aed651e77e4445dfc8885b9a7ed734e5613a18b..f45560b1c65a570b34d1e8edd65e11fab0ccd8db 100644 (file)
   <flag name='query-qmp-schema'/>
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
+  <flag name='query-cpu-definitions'/>
   <version>2006000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index 1041a12c12971516ca175cc1dcabb79949e59736..721c97be0bcd7cb656f404fe960652fcce8dc625 100644 (file)
   <flag name='query-qmp-schema'/>
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
+  <flag name='query-cpu-definitions'/>
   <version>2006000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index 92e27810f2daa613ade7c11cad184b2f2b4a348b..f1c5105be99c40c070cd6545ae0ad219b8b3357b 100644 (file)
   <flag name='query-qmp-schema'/>
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
+  <flag name='query-cpu-definitions'/>
   <version>2006000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index 1286f84df5e36354511104eec70adf292ca615dd..74b8e9aef8cd7a02a1bc521a511bc59d6650b28c 100644 (file)
   <flag name='query-qmp-schema'/>
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
+  <flag name='query-cpu-definitions'/>
   <version>2006000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index af21017bca4caacd64d39487b229868ba7cbe0eb..4c45b3805be4197116b77220139b67c5556327d6 100644 (file)
   <flag name='gluster.debug_level'/>
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
+  <flag name='query-cpu-definitions'/>
   <version>2007000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index 0c0b423f3f647fda7f137854905e374c92b2e62d..d6b589cd2f2a4f272c1ed6c19104c5d0f0a759bb 100644 (file)
   <flag name='gluster.debug_level'/>
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
+  <flag name='query-cpu-definitions'/>
   <version>2007000</version>
   <kvmVersion>0</kvmVersion>
   <package> (v2.7.0)</package>
index d179a8413369e98ff1bc0731b2081ea4539bc9a2..215159cd170118da86f73906ec50dd48284fa470 100644 (file)
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
   <flag name='query-cpu-model-expansion'/>
+  <flag name='query-cpu-definitions'/>
   <version>2007093</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index d650f094ab8f90f2d9e8e24aefc3952ffc9f4a84..a4a97a7e04e5132f6c44af5fd613fb376424fc6c 100644 (file)
   <flag name='gluster.debug_level'/>
   <flag name='vhost-scsi'/>
   <flag name='drive-iotune-group'/>
+  <flag name='query-cpu-definitions'/>
   <version>2008000</version>
   <kvmVersion>0</kvmVersion>
   <package> (v2.8.0)</package>
index a397615feaf3885dabb62df696b37edccf383290..000df939b1c1fc8bff1e13594b37e7e48d5bce90 100644 (file)
   <flag name='query-cpu-model-expansion'/>
   <flag name='virtio-net.host_mtu'/>
   <flag name='pcie-root-port'/>
+  <flag name='query-cpu-definitions'/>
   <version>2008050</version>
   <kvmVersion>0</kvmVersion>
   <package> (v2.8.0-1961-g5b10b94bd5)</package>