tests: introduce hugepages-default-1G-nodeset-2M

This test case is currently working but it uncovers existing issue
in our code that the generated QEMU commandline uses the default 1G
hugepage instead of the 2M hugepage specified for exact node.

The issue in our code is that for non-numa guests we take into account
only the first hugepage.  This will be fixed as invalid configuration
since it doesn't make any sense to set default and specific hugepage
for non-numa guest.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
Pavel Hrdina 2018-08-08 15:59:27 +02:00
parent 67cffcbbdb
commit 6ff69e936e
5 changed files with 59 additions and 0 deletions

View File

@ -0,0 +1,25 @@
LC_ALL=C \
PATH=/bin \
HOME=/home/test \
USER=test \
LOGNAME=test \
QEMU_AUDIO_DRV=none \
/usr/bin/qemu-system-i686 \
-name SomeDummyHugepagesGuest \
-S \
-machine pc,accel=tcg,usb=off,dump-guest-core=off \
-m 1024 \
-mem-prealloc \
-mem-path /dev/hugepages1G/libvirt/qemu/-1-SomeDummyHugepagesGu \
-smp 2,sockets=2,cores=1,threads=1 \
-uuid ef1bdff4-27f3-4e85-a807-5fb4d58463cc \
-display none \
-no-user-config \
-nodefaults \
-chardev socket,id=charmonitor,\
path=/tmp/lib/domain--1-SomeDummyHugepagesGu/monitor.sock,server,nowait \
-mon chardev=charmonitor,id=monitor,mode=control \
-rtc base=utc \
-no-shutdown \
-no-acpi \
-usb

View File

@ -0,0 +1,31 @@
<domain type='qemu'>
<name>SomeDummyHugepagesGuest</name>
<uuid>ef1bdff4-27f3-4e85-a807-5fb4d58463cc</uuid>
<memory unit='KiB'>1048576</memory>
<currentMemory unit='KiB'>1048576</currentMemory>
<memoryBacking>
<hugepages>
<page size='1048576' unit='KiB'/>
<page size='2048' unit='KiB' nodeset='0'/>
</hugepages>
</memoryBacking>
<vcpu placement='static'>2</vcpu>
<os>
<type arch='i686' machine='pc'>hvm</type>
<boot dev='hd'/>
</os>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/qemu-system-i686</emulator>
<controller type='usb' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
</controller>
<controller type='pci' index='0' model='pci-root'/>
<input type='mouse' bus='ps2'/>
<input type='keyboard' bus='ps2'/>
<memballoon model='none'/>
</devices>
</domain>

View File

@ -958,6 +958,7 @@ mymain(void)
DO_TEST("hugepages-default", NONE);
DO_TEST("hugepages-default-2M", NONE);
DO_TEST("hugepages-default-system-size", NONE);
DO_TEST("hugepages-default-1G-nodeset-2M", NONE);
DO_TEST_FAILURE("hugepages-nodeset-nonexist",
QEMU_CAPS_DEVICE_PC_DIMM,
QEMU_CAPS_OBJECT_MEMORY_FILE,

View File

@ -0,0 +1 @@
../qemuxml2argvdata/hugepages-default-1G-nodeset-2M.xml

View File

@ -331,6 +331,7 @@ mymain(void)
DO_TEST("hugepages-default", NONE);
DO_TEST("hugepages-default-2M", NONE);
DO_TEST("hugepages-default-system-size", NONE);
DO_TEST("hugepages-default-1G-nodeset-2M", NONE);
DO_TEST("hugepages-numa-default-2M", NONE);
DO_TEST("hugepages-numa-default-dimm", NONE);
DO_TEST("hugepages-numa-nodeset", NONE);