397dc2
From f1de31795f1010016beab3b669db821799e5a6d3 Mon Sep 17 00:00:00 2001
397dc2
Message-Id: <f1de31795f1010016beab3b669db821799e5a6d3@dist-git>
397dc2
From: Michal Privoznik <mprivozn@redhat.com>
397dc2
Date: Wed, 7 Oct 2020 18:45:42 +0200
397dc2
Subject: [PATCH] qemu: Introduce QEMU_CAPS_NUMA_HMAT capability
397dc2
MIME-Version: 1.0
397dc2
Content-Type: text/plain; charset=UTF-8
397dc2
Content-Transfer-Encoding: 8bit
397dc2
397dc2
This capability tracks whether QEMU is capable of defining HMAT
397dc2
ACPI table for the guest.
397dc2
397dc2
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
397dc2
Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com>
397dc2
(cherry picked from commit c2f15f1b1869c1732e529967d1851582409290fb)
397dc2
397dc2
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1749518
397dc2
397dc2
Conflicts:
397dc2
- src/qemu/qemu_capabilities.c: The set of capabilities diverged.
397dc2
- src/qemu/qemu_capabilities.h: Ditto.
397dc2
- tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml: Ditto.
397dc2
- tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml: Ditto.
397dc2
- tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml: Doesn't exist
397dc2
  downstream.
397dc2
- tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml: Ditto.
397dc2
- tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml: Ditto.
397dc2
397dc2
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
397dc2
Message-Id: <bf15c10c27c81f8f2d5a23568e4aebd216756642.1602087923.git.mprivozn@redhat.com>
397dc2
Reviewed-by: Ján Tomko <jtomko@redhat.com>
397dc2
---
397dc2
 src/qemu/qemu_capabilities.c                      | 2 ++
397dc2
 src/qemu/qemu_capabilities.h                      | 1 +
397dc2
 tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml | 1 +
397dc2
 tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml  | 1 +
397dc2
 4 files changed, 5 insertions(+)
397dc2
397dc2
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
397dc2
index 278eaa0009..ce52c51199 100644
397dc2
--- a/src/qemu/qemu_capabilities.c
397dc2
+++ b/src/qemu/qemu_capabilities.c
397dc2
@@ -568,6 +568,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
397dc2
               "storage.werror",
397dc2
               "pcie-root-port.hotplug",
397dc2
               "i8042",
397dc2
+              "numa.hmat",
397dc2
     );
397dc2
 
397dc2
 
397dc2
@@ -1451,6 +1452,7 @@ static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
397dc2
     { "human-monitor-command/$savevm-monitor-nodes", QEMU_CAPS_SAVEVM_MONITOR_NODES },
397dc2
     { "blockdev-add/arg-type/+nvme", QEMU_CAPS_DRIVE_NVME },
397dc2
     { "blockdev-snapshot/$allow-write-only-overlay", QEMU_CAPS_BLOCKDEV_SNAPSHOT_ALLOW_WRITE_ONLY },
397dc2
+    { "set-numa-node/arg-type/+hmat-lb", QEMU_CAPS_NUMA_HMAT },
397dc2
 };
397dc2
 
397dc2
 typedef struct _virQEMUCapsObjectTypeProps virQEMUCapsObjectTypeProps;
397dc2
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
397dc2
index 15ebcb5077..98cac5b9dc 100644
397dc2
--- a/src/qemu/qemu_capabilities.h
397dc2
+++ b/src/qemu/qemu_capabilities.h
397dc2
@@ -548,6 +548,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
397dc2
     QEMU_CAPS_STORAGE_WERROR, /* virtio-blk,scsi-hd.werror */
397dc2
     QEMU_CAPS_PCIE_ROOT_PORT_HOTPLUG, /* pcie-root-port.hotplug */
397dc2
     QEMU_CAPS_DEVICE_I8042, /* PS/2 controller */
397dc2
+    QEMU_CAPS_NUMA_HMAT, /* -numa hmat */
397dc2
 
397dc2
     QEMU_CAPS_LAST /* this must always be the last item */
397dc2
 } virQEMUCapsFlags;
397dc2
diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml b/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml
397dc2
index 140a466910..92da5cbd94 100644
397dc2
--- a/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml
397dc2
+++ b/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml
397dc2
@@ -181,6 +181,7 @@
397dc2
   <flag name='cpu.kvm-no-adjvtime'/>
397dc2
   <flag name='vhost-user-fs'/>
397dc2
   <flag name='storage.werror'/>
397dc2
+  <flag name='numa.hmat'/>
397dc2
   <version>4002050</version>
397dc2
   <kvmVersion>0</kvmVersion>
397dc2
   <microcodeVersion>61700241</microcodeVersion>
397dc2
diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml
397dc2
index 733e6b1eb4..0b841a49ac 100644
397dc2
--- a/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml
397dc2
+++ b/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml
397dc2
@@ -226,6 +226,7 @@
397dc2
   <flag name='storage.werror'/>
397dc2
   <flag name='pcie-root-port.hotplug'/>
397dc2
   <flag name='i8042'/>
397dc2
+  <flag name='numa.hmat'/>
397dc2
   <version>4002091</version>
397dc2
   <kvmVersion>0</kvmVersion>
397dc2
   <microcodeVersion>43100241</microcodeVersion>
397dc2
-- 
397dc2
2.29.2
397dc2