|
|
c1c534 |
From 92a9394006873d494610bad839255363c36e65c3 Mon Sep 17 00:00:00 2001
|
|
|
c1c534 |
Message-Id: <92a9394006873d494610bad839255363c36e65c3@dist-git>
|
|
|
c1c534 |
From: Michal Privoznik <mprivozn@redhat.com>
|
|
|
c1c534 |
Date: Mon, 4 Dec 2017 13:38:51 +0100
|
|
|
c1c534 |
Subject: [PATCH] qemu_capabilities: Introcude QEMU_CAPS_NUMA_DIST
|
|
|
c1c534 |
|
|
|
c1c534 |
https://bugzilla.redhat.com/show_bug.cgi?id=1454889
|
|
|
c1c534 |
|
|
|
c1c534 |
This capability says if qemu is capable of specifying distances
|
|
|
c1c534 |
between NUMA nodes on the command line. Unfortunately, there's no
|
|
|
c1c534 |
real way to check this and thus we have to go with version check.
|
|
|
c1c534 |
QEMU introduced this in 0f203430dd8 (and friend) which was
|
|
|
c1c534 |
released in 2.10.0.
|
|
|
c1c534 |
|
|
|
c1c534 |
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
|
|
c1c534 |
Reviewed-by: John Ferlan <jferlan@redhat.com>
|
|
|
c1c534 |
(cherry picked from commit 13e148ebda9ef0a064aa811aa14bcbb35c157ceb)
|
|
|
c1c534 |
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
|
|
c1c534 |
|
|
|
c1c534 |
Conflicts:
|
|
|
c1c534 |
src/qemu/qemu_capabilities.c
|
|
|
c1c534 |
src/qemu/qemu_capabilities.h
|
|
|
c1c534 |
tests/qemucapabilitiesdata/caps_2.10.0-gicv2.aarch64.xml
|
|
|
c1c534 |
tests/qemucapabilitiesdata/caps_2.10.0-gicv3.aarch64.xml
|
|
|
c1c534 |
tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml
|
|
|
c1c534 |
tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml
|
|
|
c1c534 |
|
|
|
c1c534 |
- Context as some capabilities are not backported.
|
|
|
c1c534 |
|
|
|
c1c534 |
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
|
|
c1c534 |
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
|
|
|
c1c534 |
---
|
|
|
c1c534 |
src/qemu/qemu_capabilities.c | 6 +++++-
|
|
|
c1c534 |
src/qemu/qemu_capabilities.h | 2 +-
|
|
|
c1c534 |
tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml | 1 +
|
|
|
c1c534 |
tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml | 1 +
|
|
|
c1c534 |
tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml | 1 +
|
|
|
c1c534 |
5 files changed, 9 insertions(+), 2 deletions(-)
|
|
|
c1c534 |
|
|
|
c1c534 |
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
|
|
|
c1c534 |
index ae5448eaaa..d1677144b7 100644
|
|
|
c1c534 |
--- a/src/qemu/qemu_capabilities.c
|
|
|
c1c534 |
+++ b/src/qemu/qemu_capabilities.c
|
|
|
c1c534 |
@@ -449,7 +449,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
|
|
|
c1c534 |
|
|
|
c1c534 |
/* 275 */
|
|
|
c1c534 |
"sclplmconsole",
|
|
|
c1c534 |
-
|
|
|
c1c534 |
+ "numa.dist",
|
|
|
c1c534 |
"disk-share-rw",
|
|
|
c1c534 |
|
|
|
c1c534 |
"isa-serial",
|
|
|
c1c534 |
@@ -4808,6 +4808,10 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps,
|
|
|
c1c534 |
virQEMUCapsSet(qemuCaps, QEMU_CAPS_MACHINE_PSERIES_RESIZE_HPT);
|
|
|
c1c534 |
}
|
|
|
c1c534 |
|
|
|
c1c534 |
+ /* no way to query for -numa dist */
|
|
|
c1c534 |
+ if (qemuCaps->version >= 2010000)
|
|
|
c1c534 |
+ virQEMUCapsSet(qemuCaps, QEMU_CAPS_NUMA_DIST);
|
|
|
c1c534 |
+
|
|
|
c1c534 |
if (virQEMUCapsProbeQMPCommands(qemuCaps, mon) < 0)
|
|
|
c1c534 |
goto cleanup;
|
|
|
c1c534 |
|
|
|
c1c534 |
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
|
|
|
c1c534 |
index c809f83404..3e016b7c79 100644
|
|
|
c1c534 |
--- a/src/qemu/qemu_capabilities.h
|
|
|
c1c534 |
+++ b/src/qemu/qemu_capabilities.h
|
|
|
c1c534 |
@@ -435,7 +435,7 @@ typedef enum {
|
|
|
c1c534 |
|
|
|
c1c534 |
/* 275 */
|
|
|
c1c534 |
QEMU_CAPS_DEVICE_SCLPLMCONSOLE, /* -device sclplmconsole */
|
|
|
c1c534 |
-
|
|
|
c1c534 |
+ QEMU_CAPS_NUMA_DIST, /* -numa dist */
|
|
|
c1c534 |
QEMU_CAPS_DISK_SHARE_RW, /* share-rw=on for concurrent disk access */
|
|
|
c1c534 |
|
|
|
c1c534 |
QEMU_CAPS_DEVICE_ISA_SERIAL, /* -device isa-serial */
|
|
|
c1c534 |
diff --git a/tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml b/tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml
|
|
|
c1c534 |
index 23356f4092..09cce92067 100644
|
|
|
c1c534 |
--- a/tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml
|
|
|
c1c534 |
+++ b/tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml
|
|
|
c1c534 |
@@ -179,6 +179,7 @@
|
|
|
c1c534 |
<flag name='virtio-blk.num-queues'/>
|
|
|
c1c534 |
<flag name='machine.pseries.resize-hpt'/>
|
|
|
c1c534 |
<flag name='spapr-vty'/>
|
|
|
c1c534 |
+ <flag name='numa.dist'/>
|
|
|
c1c534 |
<flag name='disk-share-rw'/>
|
|
|
c1c534 |
<flag name='isa-serial'/>
|
|
|
c1c534 |
<version>2010000</version>
|
|
|
c1c534 |
diff --git a/tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml b/tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml
|
|
|
c1c534 |
index 463c30c77a..00fe1cffa7 100644
|
|
|
c1c534 |
--- a/tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml
|
|
|
c1c534 |
+++ b/tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml
|
|
|
c1c534 |
@@ -142,6 +142,7 @@
|
|
|
c1c534 |
<flag name='vxhs'/>
|
|
|
c1c534 |
<flag name='virtio-blk.num-queues'/>
|
|
|
c1c534 |
<flag name='sclplmconsole'/>
|
|
|
c1c534 |
+ <flag name='numa.dist'/>
|
|
|
c1c534 |
<flag name='disk-share-rw'/>
|
|
|
c1c534 |
<version>2010000</version>
|
|
|
c1c534 |
<kvmVersion>0</kvmVersion>
|
|
|
c1c534 |
diff --git a/tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml
|
|
|
c1c534 |
index e04e530b95..2417251678 100644
|
|
|
c1c534 |
--- a/tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml
|
|
|
c1c534 |
+++ b/tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml
|
|
|
c1c534 |
@@ -224,6 +224,7 @@
|
|
|
c1c534 |
<flag name='virtio-gpu.max_outputs'/>
|
|
|
c1c534 |
<flag name='vxhs'/>
|
|
|
c1c534 |
<flag name='virtio-blk.num-queues'/>
|
|
|
c1c534 |
+ <flag name='numa.dist'/>
|
|
|
c1c534 |
<flag name='disk-share-rw'/>
|
|
|
c1c534 |
<flag name='isa-serial'/>
|
|
|
c1c534 |
<version>2010000</version>
|
|
|
c1c534 |
--
|
|
|
c1c534 |
2.15.1
|
|
|
c1c534 |
|