51d9a2
From 037f329914960906828802047b6b338471dcba36 Mon Sep 17 00:00:00 2001
51d9a2
Message-Id: <037f329914960906828802047b6b338471dcba36@dist-git>
51d9a2
From: Pavel Hrdina <phrdina@redhat.com>
51d9a2
Date: Mon, 13 Aug 2018 18:16:19 +0200
51d9a2
Subject: [PATCH] tests: introduce hugepages-nodeset
51d9a2
MIME-Version: 1.0
51d9a2
Content-Type: text/plain; charset=UTF-8
51d9a2
Content-Transfer-Encoding: 8bit
51d9a2
51d9a2
This use-case was broken by commit
51d9a2
<fa6bdf6afa878b8d7c5ed71664ee72be8967cdc5>.
51d9a2
51d9a2
We allowed this configuration and it was working as expected therefore
51d9a2
we can consider it as regression.  We should have never allowed such
51d9a2
configuration so now the best solution is in case of non-numa guest
51d9a2
silently ignore the 'nodeset' attribute if it's set to '0'.
51d9a2
51d9a2
That will be fixed by following patches.
51d9a2
51d9a2
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
51d9a2
(cherry picked from commit 154b08a3a7b1f16fefefcc106982a062c065eacd)
51d9a2
51d9a2
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1591235
51d9a2
51d9a2
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
51d9a2
Reviewed-by: Ján Tomko <jtomko@redhat.com>
51d9a2
---
51d9a2
 tests/qemuxml2argvdata/hugepages-nodeset.xml  | 30 +++++++++++++++++++
51d9a2
 tests/qemuxml2argvtest.c                      |  1 +
51d9a2
 .../qemuxml2xmloutdata/hugepages-nodeset.xml  |  1 +
51d9a2
 tests/qemuxml2xmltest.c                       |  1 +
51d9a2
 4 files changed, 33 insertions(+)
51d9a2
 create mode 100644 tests/qemuxml2argvdata/hugepages-nodeset.xml
51d9a2
 create mode 120000 tests/qemuxml2xmloutdata/hugepages-nodeset.xml
51d9a2
51d9a2
diff --git a/tests/qemuxml2argvdata/hugepages-nodeset.xml b/tests/qemuxml2argvdata/hugepages-nodeset.xml
51d9a2
new file mode 100644
51d9a2
index 0000000000..4a85ddffad
51d9a2
--- /dev/null
51d9a2
+++ b/tests/qemuxml2argvdata/hugepages-nodeset.xml
51d9a2
@@ -0,0 +1,30 @@
51d9a2
+<domain type='qemu'>
51d9a2
+  <name>SomeDummyHugepagesGuest</name>
51d9a2
+  <uuid>ef1bdff4-27f3-4e85-a807-5fb4d58463cc</uuid>
51d9a2
+  <memory unit='KiB'>1048576</memory>
51d9a2
+  <currentMemory unit='KiB'>1048576</currentMemory>
51d9a2
+  <memoryBacking>
51d9a2
+    <hugepages>
51d9a2
+      <page size='2048' unit='KiB' nodeset='0'/>
51d9a2
+    </hugepages>
51d9a2
+  </memoryBacking>
51d9a2
+  <vcpu placement='static'>2</vcpu>
51d9a2
+  <os>
51d9a2
+    <type arch='i686' machine='pc'>hvm</type>
51d9a2
+    <boot dev='hd'/>
51d9a2
+  </os>
51d9a2
+  <clock offset='utc'/>
51d9a2
+  <on_poweroff>destroy</on_poweroff>
51d9a2
+  <on_reboot>restart</on_reboot>
51d9a2
+  <on_crash>destroy</on_crash>
51d9a2
+  <devices>
51d9a2
+    <emulator>/usr/bin/qemu-system-i686</emulator>
51d9a2
+    <controller type='usb' index='0'>
51d9a2
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
51d9a2
+    </controller>
51d9a2
+    <controller type='pci' index='0' model='pci-root'/>
51d9a2
+    <input type='mouse' bus='ps2'/>
51d9a2
+    <input type='keyboard' bus='ps2'/>
51d9a2
+    <memballoon model='none'/>
51d9a2
+  </devices>
51d9a2
+</domain>
51d9a2
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
51d9a2
index f92c46cec5..bd5fdf9412 100644
51d9a2
--- a/tests/qemuxml2argvtest.c
51d9a2
+++ b/tests/qemuxml2argvtest.c
51d9a2
@@ -960,6 +960,7 @@ mymain(void)
51d9a2
     DO_TEST("hugepages-default-2M", NONE);
51d9a2
     DO_TEST("hugepages-default-system-size", NONE);
51d9a2
     DO_TEST("hugepages-default-1G-nodeset-2M", NONE);
51d9a2
+    DO_TEST_FAILURE("hugepages-nodeset", NONE);
51d9a2
     DO_TEST_FAILURE("hugepages-nodeset-nonexist",
51d9a2
                     QEMU_CAPS_DEVICE_PC_DIMM,
51d9a2
                     QEMU_CAPS_OBJECT_MEMORY_FILE,
51d9a2
diff --git a/tests/qemuxml2xmloutdata/hugepages-nodeset.xml b/tests/qemuxml2xmloutdata/hugepages-nodeset.xml
51d9a2
new file mode 120000
51d9a2
index 0000000000..b55838b780
51d9a2
--- /dev/null
51d9a2
+++ b/tests/qemuxml2xmloutdata/hugepages-nodeset.xml
51d9a2
@@ -0,0 +1 @@
51d9a2
+../qemuxml2argvdata/hugepages-nodeset.xml
51d9a2
\ No newline at end of file
51d9a2
diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c
51d9a2
index 6ba8f97e20..acbe2f7133 100644
51d9a2
--- a/tests/qemuxml2xmltest.c
51d9a2
+++ b/tests/qemuxml2xmltest.c
51d9a2
@@ -337,6 +337,7 @@ mymain(void)
51d9a2
     DO_TEST("hugepages-default-2M", NONE);
51d9a2
     DO_TEST("hugepages-default-system-size", NONE);
51d9a2
     DO_TEST("hugepages-default-1G-nodeset-2M", NONE);
51d9a2
+    DO_TEST("hugepages-nodeset", NONE);
51d9a2
     DO_TEST("hugepages-numa-default-2M", NONE);
51d9a2
     DO_TEST("hugepages-numa-default-dimm", NONE);
51d9a2
     DO_TEST("hugepages-numa-nodeset", NONE);
51d9a2
-- 
51d9a2
2.18.0
51d9a2