tests: Make sure rom.file='' for PCI devices keeps working

Even though we just introduced the rom.enabled attribute to
properly cover the use case, there might be guests out there
that use the only previously available way of disabling PCI
ROM loading by not opting in to schema validation.

To make sure such guests will keep working going forward,
introduce a test case covering the legacy workaround.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
This commit is contained in:
Andrea Bolognani 2018-04-23 13:45:59 +02:00
parent 4d11d9a292
commit 38848325df
5 changed files with 57 additions and 0 deletions

View File

@ -0,0 +1 @@
pci-rom-disabled.args

View File

@ -0,0 +1,25 @@
<domain type='qemu'>
<name>guest</name>
<uuid>c7a5fdbd-edaf-9466-926a-d65c16db1809</uuid>
<memory unit='KiB'>219100</memory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' machine='pc'>hvm</type>
</os>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<controller type='pci' model='pci-root'/>
<controller type='usb' model='none'/>
<interface type='user'>
<mac address='52:54:00:24:a5:9f'/>
<model type='virtio'/>
<!--
This method of disabling PCI ROM loading is still supported
for backwards compatibility reasons, but <rom enabled='no'/>
should be used instead.
-->
<rom file=''/>
</interface>
<memballoon model='none'/>
</devices>
</domain>

View File

@ -1555,6 +1555,7 @@ mymain(void)
QEMU_CAPS_DEVICE_VFIO_PCI);
DO_TEST("pci-rom", NONE);
DO_TEST("pci-rom-disabled", NONE);
DO_TEST("pci-rom-disabled-invalid", NONE);
DO_TEST_FULL("restore-v2", "exec:cat", 7, 0, 0, GIC_NONE, NONE);
DO_TEST_FULL("restore-v2-fd", "stdio", 7, 0, 0, GIC_NONE, NONE);

View File

@ -0,0 +1,29 @@
<domain type='qemu'>
<name>guest</name>
<uuid>c7a5fdbd-edaf-9466-926a-d65c16db1809</uuid>
<memory unit='KiB'>219100</memory>
<currentMemory unit='KiB'>219100</currentMemory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' 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-x86_64</emulator>
<controller type='pci' index='0' model='pci-root'/>
<controller type='usb' index='0' model='none'/>
<interface type='user'>
<mac address='52:54:00:24:a5:9f'/>
<model type='virtio'/>
<rom file=''/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<input type='mouse' bus='ps2'/>
<input type='keyboard' bus='ps2'/>
<memballoon model='none'/>
</devices>
</domain>

View File

@ -475,6 +475,7 @@ mymain(void)
DO_TEST("hostdev-mdev-precreated", NONE);
DO_TEST("pci-rom", NONE);
DO_TEST("pci-rom-disabled", NONE);
DO_TEST("pci-rom-disabled-invalid", NONE);
DO_TEST("pci-serial-dev-chardev", NONE);
DO_TEST("encrypted-disk", NONE);