render / rpms / libvirt

Forked from rpms/libvirt 5 months ago
Clone
982648
From 5f87f644dea3f05b30c8011b274f8c37530210e9 Mon Sep 17 00:00:00 2001
982648
Message-Id: <5f87f644dea3f05b30c8011b274f8c37530210e9@dist-git>
982648
From: Pavel Hrdina <phrdina@redhat.com>
982648
Date: Mon, 13 Aug 2018 18:16:18 +0200
982648
Subject: [PATCH] tests: introduce hugepages-default-1G-nodeset-2M
982648
MIME-Version: 1.0
982648
Content-Type: text/plain; charset=UTF-8
982648
Content-Transfer-Encoding: 8bit
982648
982648
This test case is currently working but it uncovers existing issue
982648
in our code that the generated QEMU commandline uses the default 1G
982648
hugepage instead of the 2M hugepage specified for exact node.
982648
982648
The issue in our code is that for non-numa guests we take into account
982648
only the first hugepage.  This will be fixed as invalid configuration
982648
since it doesn't make any sense to set default and specific hugepage
982648
for non-numa guest.
982648
982648
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
982648
(cherry picked from commit 6ff69e936e4185983fc331c45b76d3b3d8b717ae)
982648
982648
Conflicts:
982648
    tests/qemuxml2argvdata/hugepages-default-1G-nodeset-2M.args
982648
        - missing upstream commit <caccbba64a>
982648
982648
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1591235
982648
982648
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
982648
Reviewed-by: Ján Tomko <jtomko@redhat.com>
982648
---
982648
 .../hugepages-default-1G-nodeset-2M.args      | 26 ++++++++++++++++
982648
 .../hugepages-default-1G-nodeset-2M.xml       | 31 +++++++++++++++++++
982648
 tests/qemuxml2argvtest.c                      |  1 +
982648
 .../hugepages-default-1G-nodeset-2M.xml       |  1 +
982648
 tests/qemuxml2xmltest.c                       |  1 +
982648
 5 files changed, 60 insertions(+)
982648
 create mode 100644 tests/qemuxml2argvdata/hugepages-default-1G-nodeset-2M.args
982648
 create mode 100644 tests/qemuxml2argvdata/hugepages-default-1G-nodeset-2M.xml
982648
 create mode 120000 tests/qemuxml2xmloutdata/hugepages-default-1G-nodeset-2M.xml
982648
982648
diff --git a/tests/qemuxml2argvdata/hugepages-default-1G-nodeset-2M.args b/tests/qemuxml2argvdata/hugepages-default-1G-nodeset-2M.args
982648
new file mode 100644
982648
index 0000000000..d1f8974032
982648
--- /dev/null
982648
+++ b/tests/qemuxml2argvdata/hugepages-default-1G-nodeset-2M.args
982648
@@ -0,0 +1,26 @@
982648
+LC_ALL=C \
982648
+PATH=/bin \
982648
+HOME=/home/test \
982648
+USER=test \
982648
+LOGNAME=test \
982648
+QEMU_AUDIO_DRV=none \
982648
+/usr/bin/qemu-system-i686 \
982648
+-name SomeDummyHugepagesGuest \
982648
+-S \
982648
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
982648
+-m 1024 \
982648
+-mem-prealloc \
982648
+-mem-path /dev/hugepages1G/libvirt/qemu/-1-SomeDummyHugepagesGu \
982648
+-smp 2,sockets=2,cores=1,threads=1 \
982648
+-uuid ef1bdff4-27f3-4e85-a807-5fb4d58463cc \
982648
+-display none \
982648
+-no-user-config \
982648
+-nodefaults \
982648
+-chardev socket,id=charmonitor,\
982648
+path=/tmp/lib/domain--1-SomeDummyHugepagesGu/monitor.sock,server,nowait \
982648
+-mon chardev=charmonitor,id=monitor,mode=control \
982648
+-rtc base=utc \
982648
+-no-shutdown \
982648
+-no-acpi \
982648
+-boot c \
982648
+-usb
982648
diff --git a/tests/qemuxml2argvdata/hugepages-default-1G-nodeset-2M.xml b/tests/qemuxml2argvdata/hugepages-default-1G-nodeset-2M.xml
982648
new file mode 100644
982648
index 0000000000..eb0943b105
982648
--- /dev/null
982648
+++ b/tests/qemuxml2argvdata/hugepages-default-1G-nodeset-2M.xml
982648
@@ -0,0 +1,31 @@
982648
+<domain type='qemu'>
982648
+  <name>SomeDummyHugepagesGuest</name>
982648
+  <uuid>ef1bdff4-27f3-4e85-a807-5fb4d58463cc</uuid>
982648
+  <memory unit='KiB'>1048576</memory>
982648
+  <currentMemory unit='KiB'>1048576</currentMemory>
982648
+  <memoryBacking>
982648
+    <hugepages>
982648
+      <page size='1048576' unit='KiB'/>
982648
+      <page size='2048' unit='KiB' nodeset='0'/>
982648
+    </hugepages>
982648
+  </memoryBacking>
982648
+  <vcpu placement='static'>2</vcpu>
982648
+  <os>
982648
+    <type arch='i686' machine='pc'>hvm</type>
982648
+    <boot dev='hd'/>
982648
+  </os>
982648
+  <clock offset='utc'/>
982648
+  <on_poweroff>destroy</on_poweroff>
982648
+  <on_reboot>restart</on_reboot>
982648
+  <on_crash>destroy</on_crash>
982648
+  <devices>
982648
+    <emulator>/usr/bin/qemu-system-i686</emulator>
982648
+    <controller type='usb' index='0'>
982648
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
982648
+    </controller>
982648
+    <controller type='pci' index='0' model='pci-root'/>
982648
+    <input type='mouse' bus='ps2'/>
982648
+    <input type='keyboard' bus='ps2'/>
982648
+    <memballoon model='none'/>
982648
+  </devices>
982648
+</domain>
982648
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
982648
index d4251eff3e..f92c46cec5 100644
982648
--- a/tests/qemuxml2argvtest.c
982648
+++ b/tests/qemuxml2argvtest.c
982648
@@ -959,6 +959,7 @@ mymain(void)
982648
     DO_TEST("hugepages-default", NONE);
982648
     DO_TEST("hugepages-default-2M", NONE);
982648
     DO_TEST("hugepages-default-system-size", NONE);
982648
+    DO_TEST("hugepages-default-1G-nodeset-2M", NONE);
982648
     DO_TEST_FAILURE("hugepages-nodeset-nonexist",
982648
                     QEMU_CAPS_DEVICE_PC_DIMM,
982648
                     QEMU_CAPS_OBJECT_MEMORY_FILE,
982648
diff --git a/tests/qemuxml2xmloutdata/hugepages-default-1G-nodeset-2M.xml b/tests/qemuxml2xmloutdata/hugepages-default-1G-nodeset-2M.xml
982648
new file mode 120000
982648
index 0000000000..3d8eb7616e
982648
--- /dev/null
982648
+++ b/tests/qemuxml2xmloutdata/hugepages-default-1G-nodeset-2M.xml
982648
@@ -0,0 +1 @@
982648
+../qemuxml2argvdata/hugepages-default-1G-nodeset-2M.xml
982648
\ No newline at end of file
982648
diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c
982648
index 6afc48f98e..6ba8f97e20 100644
982648
--- a/tests/qemuxml2xmltest.c
982648
+++ b/tests/qemuxml2xmltest.c
982648
@@ -336,6 +336,7 @@ mymain(void)
982648
     DO_TEST("hugepages-default", NONE);
982648
     DO_TEST("hugepages-default-2M", NONE);
982648
     DO_TEST("hugepages-default-system-size", NONE);
982648
+    DO_TEST("hugepages-default-1G-nodeset-2M", NONE);
982648
     DO_TEST("hugepages-numa-default-2M", NONE);
982648
     DO_TEST("hugepages-numa-default-dimm", NONE);
982648
     DO_TEST("hugepages-numa-nodeset", NONE);
982648
-- 
982648
2.18.0
982648