]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu_capabilities: Introcude QEMU_CAPS_NUMA_DIST
authorMichal Privoznik <mprivozn@redhat.com>
Tue, 14 Nov 2017 13:29:20 +0000 (14:29 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Thu, 23 Nov 2017 13:54:31 +0000 (14:54 +0100)
This capability says if qemu is capable of specifying distances
between NUMA nodes on the command line. Unfortunately, there's no
real way to check this and thus we have to go with version check.
QEMU introduced this in 0f203430dd8 (and friend) which was
released in 2.10.0.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: John Ferlan <jferlan@redhat.com>
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
tests/qemucapabilitiesdata/caps_2.10.0-gicv2.aarch64.xml
tests/qemucapabilitiesdata/caps_2.10.0-gicv3.aarch64.xml
tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml
tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml
tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml

index 9c1eeacadaf0ed56d1ec192359c5d2eebd5e0550..1c133d761778ab514bf2decaca89e5e8d4df2381 100644 (file)
@@ -449,6 +449,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
 
               /* 275 */
               "sclplmconsole",
+              "numa.dist",
     );
 
 
@@ -4792,6 +4793,10 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps,
         virQEMUCapsSet(qemuCaps, QEMU_CAPS_MACHINE_PSERIES_RESIZE_HPT);
     }
 
+    /* no way to query for -numa dist */
+    if (qemuCaps->version >= 2010000)
+        virQEMUCapsSet(qemuCaps, QEMU_CAPS_NUMA_DIST);
+
     if (virQEMUCapsProbeQMPCommands(qemuCaps, mon) < 0)
         goto cleanup;
 
index 241764824c78b04b4ab3c8d2bec9ddaddee2e7f9..cb7cdd7f58f7ced0dac89fc0e951af9109c4c358 100644 (file)
@@ -435,6 +435,7 @@ typedef enum {
 
     /* 275 */
     QEMU_CAPS_DEVICE_SCLPLMCONSOLE, /* -device sclplmconsole */
+    QEMU_CAPS_NUMA_DIST, /* -numa dist */
 
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
index 9f9dceb684fce4bd1a942923f269fa323915f0aa..06b90875d4511355a9e564c820f0af98df23a88a 100644 (file)
   <flag name='virtio-gpu.max_outputs'/>
   <flag name='vxhs'/>
   <flag name='virtio-blk.num-queues'/>
+  <flag name='numa.dist'/>
   <version>2010000</version>
   <kvmVersion>0</kvmVersion>
   <package> (v2.10.0)</package>
index 3c2d2eed6655ce68364459c627f5ed8b443e05ad..389390fe4ca224ba6cf987bd98b7c9af97673ebc 100644 (file)
   <flag name='virtio-gpu.max_outputs'/>
   <flag name='vxhs'/>
   <flag name='virtio-blk.num-queues'/>
+  <flag name='numa.dist'/>
   <version>2010000</version>
   <kvmVersion>0</kvmVersion>
   <package> (v2.10.0)</package>
index b7b80799c044c8f4983347c328e2c99e0d16c864..9e71bd52531a48af68f08e13c68a760476242476 100644 (file)
   <flag name='virtio-blk.num-queues'/>
   <flag name='machine.pseries.resize-hpt'/>
   <flag name='spapr-vty'/>
+  <flag name='numa.dist'/>
   <version>2010000</version>
   <kvmVersion>0</kvmVersion>
   <package> (v2.10.0)</package>
index dee468252cd9fb8b138bb29ce7c976695502a55b..6d9024455c33c9971c5f17bebc30bf82bcbd23f9 100644 (file)
   <flag name='vxhs'/>
   <flag name='virtio-blk.num-queues'/>
   <flag name='sclplmconsole'/>
+  <flag name='numa.dist'/>
   <version>2010000</version>
   <kvmVersion>0</kvmVersion>
   <package></package>
index ddbd8c32fa17b8230156dfafcc7875b707d3a380..50251edc0c4e18c2a3c8082d7d919fd2c1f21e63 100644 (file)
   <flag name='virtio-gpu.max_outputs'/>
   <flag name='vxhs'/>
   <flag name='virtio-blk.num-queues'/>
+  <flag name='numa.dist'/>
   <version>2010000</version>
   <kvmVersion>0</kvmVersion>
   <package> (v2.10.0)</package>