qemucapabilitiestest: Test all capabilities

Enhance the test to cover all capabilities we probe for rather than
testing the flags only.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
This commit is contained in:
Jiri Denemark 2016-04-28 17:02:38 +02:00
parent a37ffef5e9
commit 55b1073451
13 changed files with 558 additions and 73 deletions

View File

@ -3,6 +3,7 @@
<domain>kvm</domain> <domain>kvm</domain>
<machine>pc-1.2</machine> <machine>pc-1.2</machine>
<arch>x86_64</arch> <arch>x86_64</arch>
<vcpu max='255'/>
<os supported='yes'> <os supported='yes'>
<loader supported='yes'> <loader supported='yes'>
<value>/usr/share/AAVMF/AAVMF_CODE.fd</value> <value>/usr/share/AAVMF/AAVMF_CODE.fd</value>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -114,4 +118,42 @@
<flag name='qxl.vram64_size_mb'/> <flag name='qxl.vram64_size_mb'/>
<flag name='qxl-vga.vram64_size_mb'/> <flag name='qxl-vga.vram64_size_mb'/>
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<version>1002002</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='qemu64'/>
<cpu name='phenom'/>
<cpu name='core2duo'/>
<cpu name='kvm64'/>
<cpu name='qemu32'/>
<cpu name='kvm32'/>
<cpu name='coreduo'/>
<cpu name='486'/>
<cpu name='pentium'/>
<cpu name='pentium2'/>
<cpu name='pentium3'/>
<cpu name='athlon'/>
<cpu name='n270'/>
<cpu name='Conroe'/>
<cpu name='Penryn'/>
<cpu name='Nehalem'/>
<cpu name='Westmere'/>
<cpu name='SandyBridge'/>
<cpu name='Opteron_G1'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G4'/>
<machine name='pc-1.2' alias='pc' maxCpus='0'/>
<machine name='xenpv' maxCpus='0'/>
<machine name='xenfv' maxCpus='0'/>
<machine name='isapc' maxCpus='0'/>
<machine name='pc-0.10' maxCpus='0'/>
<machine name='pc-0.11' maxCpus='0'/>
<machine name='pc-0.12' maxCpus='0'/>
<machine name='pc-0.13' maxCpus='0'/>
<machine name='pc-0.14' maxCpus='0'/>
<machine name='pc-0.15' maxCpus='0'/>
<machine name='pc-1.0' maxCpus='0'/>
<machine name='pc-1.1' maxCpus='0'/>
</qemuCaps> </qemuCaps>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -130,4 +134,46 @@
<flag name='qxl-vga.vram64_size_mb'/> <flag name='qxl-vga.vram64_size_mb'/>
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/> <flag name='nec-usb-xhci-ports'/>
<version>1003001</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='qemu64'/>
<cpu name='phenom'/>
<cpu name='core2duo'/>
<cpu name='kvm64'/>
<cpu name='qemu32'/>
<cpu name='kvm32'/>
<cpu name='coreduo'/>
<cpu name='486'/>
<cpu name='pentium'/>
<cpu name='pentium2'/>
<cpu name='pentium3'/>
<cpu name='athlon'/>
<cpu name='n270'/>
<cpu name='Conroe'/>
<cpu name='Penryn'/>
<cpu name='Nehalem'/>
<cpu name='Westmere'/>
<cpu name='SandyBridge'/>
<cpu name='Haswell'/>
<cpu name='Opteron_G1'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G4'/>
<cpu name='Opteron_G5'/>
<machine name='pc-1.3' alias='pc' maxCpus='0'/>
<machine name='xenpv' maxCpus='0'/>
<machine name='q35-next' alias='q35' maxCpus='0'/>
<machine name='xenfv' maxCpus='0'/>
<machine name='isapc' maxCpus='0'/>
<machine name='pc-0.10' maxCpus='0'/>
<machine name='pc-0.11' maxCpus='0'/>
<machine name='pc-0.12' maxCpus='0'/>
<machine name='pc-0.13' maxCpus='0'/>
<machine name='pc-0.14' maxCpus='0'/>
<machine name='pc-0.15' maxCpus='0'/>
<machine name='pc-1.0' maxCpus='0'/>
<machine name='pc-1.1' maxCpus='0'/>
<machine name='pc-1.2' maxCpus='0'/>
</qemuCaps> </qemuCaps>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -131,4 +135,47 @@
<flag name='qxl-vga.vram64_size_mb'/> <flag name='qxl-vga.vram64_size_mb'/>
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/> <flag name='nec-usb-xhci-ports'/>
<version>1004002</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='Opteron_G5'/>
<cpu name='Opteron_G4'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G1'/>
<cpu name='Haswell'/>
<cpu name='SandyBridge'/>
<cpu name='Westmere'/>
<cpu name='Nehalem'/>
<cpu name='Penryn'/>
<cpu name='Conroe'/>
<cpu name='n270'/>
<cpu name='athlon'/>
<cpu name='pentium3'/>
<cpu name='pentium2'/>
<cpu name='pentium'/>
<cpu name='486'/>
<cpu name='coreduo'/>
<cpu name='kvm32'/>
<cpu name='qemu32'/>
<cpu name='kvm64'/>
<cpu name='core2duo'/>
<cpu name='phenom'/>
<cpu name='qemu64'/>
<machine name='pc-i440fx-1.4' alias='pc' maxCpus='0'/>
<machine name='xenpv' maxCpus='0'/>
<machine name='pc-q35-1.4' alias='q35' maxCpus='0'/>
<machine name='xenfv' maxCpus='0'/>
<machine name='isapc' maxCpus='0'/>
<machine name='pc-0.10' maxCpus='0'/>
<machine name='pc-0.11' maxCpus='0'/>
<machine name='pc-0.12' maxCpus='0'/>
<machine name='pc-0.13' maxCpus='0'/>
<machine name='pc-0.14' maxCpus='0'/>
<machine name='pc-0.15' maxCpus='0'/>
<machine name='pc-1.0' maxCpus='0'/>
<machine name='pc-1.1' maxCpus='0'/>
<machine name='pc-1.2' maxCpus='0'/>
<machine name='pc-1.3' maxCpus='0'/>
</qemuCaps> </qemuCaps>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -140,4 +144,47 @@
<flag name='qxl-vga.vram64_size_mb'/> <flag name='qxl-vga.vram64_size_mb'/>
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/> <flag name='nec-usb-xhci-ports'/>
<version>1005003</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='Opteron_G5'/>
<cpu name='Opteron_G4'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G1'/>
<cpu name='Haswell'/>
<cpu name='SandyBridge'/>
<cpu name='Westmere'/>
<cpu name='Nehalem'/>
<cpu name='Penryn'/>
<cpu name='Conroe'/>
<cpu name='n270'/>
<cpu name='athlon'/>
<cpu name='pentium3'/>
<cpu name='pentium2'/>
<cpu name='pentium'/>
<cpu name='486'/>
<cpu name='coreduo'/>
<cpu name='kvm32'/>
<cpu name='qemu32'/>
<cpu name='kvm64'/>
<cpu name='core2duo'/>
<cpu name='phenom'/>
<cpu name='qemu64'/>
<machine name='pc-i440fx-1.5' alias='pc' maxCpus='255'/>
<machine name='pc-q35-1.4' maxCpus='255'/>
<machine name='pc-q35-1.5' alias='q35' maxCpus='255'/>
<machine name='isapc' maxCpus='1'/>
<machine name='pc-0.10' maxCpus='255'/>
<machine name='pc-0.11' maxCpus='255'/>
<machine name='pc-0.12' maxCpus='255'/>
<machine name='pc-0.13' maxCpus='255'/>
<machine name='pc-0.14' maxCpus='255'/>
<machine name='pc-0.15' maxCpus='255'/>
<machine name='pc-1.0' maxCpus='255'/>
<machine name='pc-1.1' maxCpus='255'/>
<machine name='pc-1.2' maxCpus='255'/>
<machine name='pc-1.3' maxCpus='255'/>
<machine name='pc-i440fx-1.4' maxCpus='255'/>
</qemuCaps> </qemuCaps>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -146,4 +150,51 @@
<flag name='qxl-vga.vram64_size_mb'/> <flag name='qxl-vga.vram64_size_mb'/>
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/> <flag name='nec-usb-xhci-ports'/>
<version>1006000</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='Opteron_G5'/>
<cpu name='Opteron_G4'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G1'/>
<cpu name='Haswell'/>
<cpu name='SandyBridge'/>
<cpu name='Westmere'/>
<cpu name='Nehalem'/>
<cpu name='Penryn'/>
<cpu name='Conroe'/>
<cpu name='n270'/>
<cpu name='athlon'/>
<cpu name='pentium3'/>
<cpu name='pentium2'/>
<cpu name='pentium'/>
<cpu name='486'/>
<cpu name='coreduo'/>
<cpu name='kvm32'/>
<cpu name='qemu32'/>
<cpu name='kvm64'/>
<cpu name='core2duo'/>
<cpu name='phenom'/>
<cpu name='qemu64'/>
<machine name='pc-i440fx-1.6' alias='pc' maxCpus='255'/>
<machine name='xenpv' maxCpus='1'/>
<machine name='pc-q35-1.4' maxCpus='255'/>
<machine name='pc-q35-1.5' maxCpus='255'/>
<machine name='pc-q35-1.6' alias='q35' maxCpus='255'/>
<machine name='xenfv' maxCpus='128'/>
<machine name='isapc' maxCpus='1'/>
<machine name='pc-0.10' maxCpus='255'/>
<machine name='pc-0.11' maxCpus='255'/>
<machine name='pc-0.12' maxCpus='255'/>
<machine name='pc-0.13' maxCpus='255'/>
<machine name='pc-0.14' maxCpus='255'/>
<machine name='pc-0.15' maxCpus='255'/>
<machine name='pc-1.0' maxCpus='255'/>
<machine name='pc-1.1' maxCpus='255'/>
<machine name='pc-1.2' maxCpus='255'/>
<machine name='pc-1.3' maxCpus='255'/>
<machine name='pc-i440fx-1.4' maxCpus='255'/>
<machine name='pc-i440fx-1.5' maxCpus='255'/>
</qemuCaps> </qemuCaps>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -146,4 +150,53 @@
<flag name='qxl-vga.vram64_size_mb'/> <flag name='qxl-vga.vram64_size_mb'/>
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/> <flag name='nec-usb-xhci-ports'/>
<version>1006050</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='Opteron_G5'/>
<cpu name='Opteron_G4'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G1'/>
<cpu name='Haswell'/>
<cpu name='SandyBridge'/>
<cpu name='Westmere'/>
<cpu name='Nehalem'/>
<cpu name='Penryn'/>
<cpu name='Conroe'/>
<cpu name='n270'/>
<cpu name='athlon'/>
<cpu name='pentium3'/>
<cpu name='pentium2'/>
<cpu name='pentium'/>
<cpu name='486'/>
<cpu name='coreduo'/>
<cpu name='kvm32'/>
<cpu name='qemu32'/>
<cpu name='kvm64'/>
<cpu name='core2duo'/>
<cpu name='phenom'/>
<cpu name='qemu64'/>
<machine name='pc-i440fx-1.7' alias='pc' maxCpus='255'/>
<machine name='xenpv' maxCpus='1'/>
<machine name='pc-q35-1.4' maxCpus='255'/>
<machine name='pc-q35-1.5' maxCpus='255'/>
<machine name='pc-q35-1.6' maxCpus='255'/>
<machine name='pc-q35-1.7' alias='q35' maxCpus='255'/>
<machine name='xenfv' maxCpus='128'/>
<machine name='isapc' maxCpus='1'/>
<machine name='pc-0.10' maxCpus='255'/>
<machine name='pc-0.11' maxCpus='255'/>
<machine name='pc-0.12' maxCpus='255'/>
<machine name='pc-0.13' maxCpus='255'/>
<machine name='pc-0.14' maxCpus='255'/>
<machine name='pc-0.15' maxCpus='255'/>
<machine name='pc-1.0' maxCpus='255'/>
<machine name='pc-1.1' maxCpus='255'/>
<machine name='pc-1.2' maxCpus='255'/>
<machine name='pc-1.3' maxCpus='255'/>
<machine name='pc-i440fx-1.4' maxCpus='255'/>
<machine name='pc-i440fx-1.5' maxCpus='255'/>
<machine name='pc-i440fx-1.6' maxCpus='255'/>
</qemuCaps> </qemuCaps>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -164,4 +168,58 @@
<flag name='debug-threads'/> <flag name='debug-threads'/>
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/> <flag name='nec-usb-xhci-ports'/>
<version>2001001</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='Opteron_G5'/>
<cpu name='Opteron_G4'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G1'/>
<cpu name='Broadwell'/>
<cpu name='Haswell'/>
<cpu name='SandyBridge'/>
<cpu name='Westmere'/>
<cpu name='Nehalem'/>
<cpu name='Penryn'/>
<cpu name='Conroe'/>
<cpu name='n270'/>
<cpu name='athlon'/>
<cpu name='pentium3'/>
<cpu name='pentium2'/>
<cpu name='pentium'/>
<cpu name='486'/>
<cpu name='coreduo'/>
<cpu name='kvm32'/>
<cpu name='qemu32'/>
<cpu name='kvm64'/>
<cpu name='core2duo'/>
<cpu name='phenom'/>
<cpu name='qemu64'/>
<machine name='pc-i440fx-2.1' alias='pc' maxCpus='255'/>
<machine name='pc-1.3' maxCpus='255'/>
<machine name='pc-0.12' maxCpus='255'/>
<machine name='pc-q35-1.6' maxCpus='255'/>
<machine name='pc-q35-1.5' maxCpus='255'/>
<machine name='xenpv' maxCpus='1'/>
<machine name='pc-i440fx-1.6' maxCpus='255'/>
<machine name='pc-i440fx-1.7' maxCpus='255'/>
<machine name='pc-q35-2.1' alias='q35' maxCpus='255'/>
<machine name='pc-0.11' maxCpus='255'/>
<machine name='pc-0.10' maxCpus='255'/>
<machine name='pc-1.2' maxCpus='255'/>
<machine name='isapc' maxCpus='1'/>
<machine name='pc-q35-1.4' maxCpus='255'/>
<machine name='xenfv' maxCpus='128'/>
<machine name='pc-0.15' maxCpus='255'/>
<machine name='pc-i440fx-1.5' maxCpus='255'/>
<machine name='pc-i440fx-1.4' maxCpus='255'/>
<machine name='pc-q35-2.0' maxCpus='255'/>
<machine name='pc-0.14' maxCpus='255'/>
<machine name='pc-1.1' maxCpus='255'/>
<machine name='pc-q35-1.7' maxCpus='255'/>
<machine name='pc-1.0' maxCpus='255'/>
<machine name='pc-i440fx-2.0' maxCpus='255'/>
<machine name='pc-0.13' maxCpus='255'/>
</qemuCaps> </qemuCaps>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -177,4 +181,65 @@
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/> <flag name='nec-usb-xhci-ports'/>
<flag name='virtio-scsi-pci.iothread'/> <flag name='virtio-scsi-pci.iothread'/>
<version>2004000</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='Opteron_G5'/>
<cpu name='Opteron_G4'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G1'/>
<cpu name='Broadwell'/>
<cpu name='Broadwell-noTSX'/>
<cpu name='Haswell'/>
<cpu name='Haswell-noTSX'/>
<cpu name='IvyBridge'/>
<cpu name='SandyBridge'/>
<cpu name='Westmere'/>
<cpu name='Nehalem'/>
<cpu name='Penryn'/>
<cpu name='Conroe'/>
<cpu name='n270'/>
<cpu name='athlon'/>
<cpu name='pentium3'/>
<cpu name='pentium2'/>
<cpu name='pentium'/>
<cpu name='486'/>
<cpu name='coreduo'/>
<cpu name='kvm32'/>
<cpu name='qemu32'/>
<cpu name='kvm64'/>
<cpu name='core2duo'/>
<cpu name='phenom'/>
<cpu name='qemu64'/>
<machine name='pc-i440fx-2.4' alias='pc' maxCpus='255'/>
<machine name='pc-1.3' maxCpus='255'/>
<machine name='pc-0.12' maxCpus='255'/>
<machine name='pc-q35-1.6' maxCpus='255'/>
<machine name='pc-q35-1.5' maxCpus='255'/>
<machine name='pc-i440fx-1.6' maxCpus='255'/>
<machine name='pc-q35-2.2' maxCpus='255'/>
<machine name='pc-i440fx-1.7' maxCpus='255'/>
<machine name='pc-q35-2.1' maxCpus='255'/>
<machine name='pc-0.11' maxCpus='255'/>
<machine name='pc-0.10' maxCpus='255'/>
<machine name='pc-i440fx-2.2' maxCpus='255'/>
<machine name='pc-1.2' maxCpus='255'/>
<machine name='isapc' maxCpus='1'/>
<machine name='pc-i440fx-2.3' maxCpus='255'/>
<machine name='pc-q35-1.4' maxCpus='255'/>
<machine name='pc-0.15' maxCpus='255'/>
<machine name='pc-i440fx-1.5' maxCpus='255'/>
<machine name='pc-q35-2.0' maxCpus='255'/>
<machine name='pc-i440fx-1.4' maxCpus='255'/>
<machine name='pc-0.14' maxCpus='255'/>
<machine name='pc-1.1' maxCpus='255'/>
<machine name='pc-i440fx-2.1' maxCpus='255'/>
<machine name='pc-q35-1.7' maxCpus='255'/>
<machine name='pc-1.0' maxCpus='255'/>
<machine name='pc-i440fx-2.0' maxCpus='255'/>
<machine name='pc-q35-2.4' alias='q35' maxCpus='255'/>
<machine name='pc-q35-2.3' maxCpus='255'/>
<machine name='pc-0.13' maxCpus='255'/>
</qemuCaps> </qemuCaps>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -178,4 +182,65 @@
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/> <flag name='nec-usb-xhci-ports'/>
<flag name='virtio-scsi-pci.iothread'/> <flag name='virtio-scsi-pci.iothread'/>
<version>2004000</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='Opteron_G5'/>
<cpu name='Opteron_G4'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G1'/>
<cpu name='Broadwell'/>
<cpu name='Broadwell-noTSX'/>
<cpu name='Haswell'/>
<cpu name='Haswell-noTSX'/>
<cpu name='IvyBridge'/>
<cpu name='SandyBridge'/>
<cpu name='Westmere'/>
<cpu name='Nehalem'/>
<cpu name='Penryn'/>
<cpu name='Conroe'/>
<cpu name='n270'/>
<cpu name='athlon'/>
<cpu name='pentium3'/>
<cpu name='pentium2'/>
<cpu name='pentium'/>
<cpu name='486'/>
<cpu name='coreduo'/>
<cpu name='kvm32'/>
<cpu name='qemu32'/>
<cpu name='kvm64'/>
<cpu name='core2duo'/>
<cpu name='phenom'/>
<cpu name='qemu64'/>
<machine name='pc-i440fx-2.4' alias='pc' maxCpus='255'/>
<machine name='pc-1.3' maxCpus='255'/>
<machine name='pc-0.12' maxCpus='255'/>
<machine name='pc-q35-1.6' maxCpus='255'/>
<machine name='pc-q35-1.5' maxCpus='255'/>
<machine name='pc-i440fx-1.6' maxCpus='255'/>
<machine name='pc-q35-2.2' maxCpus='255'/>
<machine name='pc-i440fx-1.7' maxCpus='255'/>
<machine name='pc-q35-2.1' maxCpus='255'/>
<machine name='pc-0.11' maxCpus='255'/>
<machine name='pc-0.10' maxCpus='255'/>
<machine name='pc-i440fx-2.2' maxCpus='255'/>
<machine name='pc-1.2' maxCpus='255'/>
<machine name='isapc' maxCpus='1'/>
<machine name='pc-i440fx-2.3' maxCpus='255'/>
<machine name='pc-q35-1.4' maxCpus='255'/>
<machine name='pc-0.15' maxCpus='255'/>
<machine name='pc-i440fx-1.5' maxCpus='255'/>
<machine name='pc-q35-2.0' maxCpus='255'/>
<machine name='pc-i440fx-1.4' maxCpus='255'/>
<machine name='pc-0.14' maxCpus='255'/>
<machine name='pc-1.1' maxCpus='255'/>
<machine name='pc-i440fx-2.1' maxCpus='255'/>
<machine name='pc-q35-1.7' maxCpus='255'/>
<machine name='pc-1.0' maxCpus='255'/>
<machine name='pc-i440fx-2.0' maxCpus='255'/>
<machine name='pc-q35-2.4' alias='q35' maxCpus='255'/>
<machine name='pc-q35-2.3' maxCpus='255'/>
<machine name='pc-0.13' maxCpus='255'/>
</qemuCaps> </qemuCaps>

View File

@ -1,4 +1,8 @@
<qemuCaps> <qemuCaps>
<qemuctime>0</qemuctime>
<selfctime>0</selfctime>
<selfvers>0</selfvers>
<usedQMP/>
<flag name='mem-path'/> <flag name='mem-path'/>
<flag name='drive-serial'/> <flag name='drive-serial'/>
<flag name='chardev'/> <flag name='chardev'/>
@ -183,4 +187,65 @@
<flag name='device-tray-moved-event'/> <flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/> <flag name='nec-usb-xhci-ports'/>
<flag name='virtio-scsi-pci.iothread'/> <flag name='virtio-scsi-pci.iothread'/>
<version>2005050</version>
<kvmVersion>0</kvmVersion>
<package></package>
<arch>x86_64</arch>
<cpu name='Opteron_G5'/>
<cpu name='Opteron_G4'/>
<cpu name='Opteron_G3'/>
<cpu name='Opteron_G2'/>
<cpu name='Opteron_G1'/>
<cpu name='Broadwell'/>
<cpu name='Broadwell-noTSX'/>
<cpu name='Haswell'/>
<cpu name='Haswell-noTSX'/>
<cpu name='IvyBridge'/>
<cpu name='SandyBridge'/>
<cpu name='Westmere'/>
<cpu name='Nehalem'/>
<cpu name='Penryn'/>
<cpu name='Conroe'/>
<cpu name='n270'/>
<cpu name='athlon'/>
<cpu name='pentium3'/>
<cpu name='pentium2'/>
<cpu name='pentium'/>
<cpu name='486'/>
<cpu name='coreduo'/>
<cpu name='kvm32'/>
<cpu name='qemu32'/>
<cpu name='kvm64'/>
<cpu name='core2duo'/>
<cpu name='phenom'/>
<cpu name='qemu64'/>
<machine name='pc-i440fx-2.4' alias='pc' maxCpus='255'/>
<machine name='pc-1.3' maxCpus='255'/>
<machine name='pc-0.12' maxCpus='255'/>
<machine name='pc-q35-1.6' maxCpus='255'/>
<machine name='pc-q35-1.5' maxCpus='255'/>
<machine name='pc-i440fx-1.6' maxCpus='255'/>
<machine name='pc-q35-2.2' maxCpus='255'/>
<machine name='pc-i440fx-1.7' maxCpus='255'/>
<machine name='pc-q35-2.1' maxCpus='255'/>
<machine name='pc-0.11' maxCpus='255'/>
<machine name='pc-0.10' maxCpus='255'/>
<machine name='pc-i440fx-2.2' maxCpus='255'/>
<machine name='pc-1.2' maxCpus='255'/>
<machine name='isapc' maxCpus='1'/>
<machine name='pc-i440fx-2.3' maxCpus='255'/>
<machine name='pc-q35-1.4' maxCpus='255'/>
<machine name='pc-0.15' maxCpus='255'/>
<machine name='pc-i440fx-1.5' maxCpus='255'/>
<machine name='pc-q35-2.0' maxCpus='255'/>
<machine name='pc-i440fx-1.4' maxCpus='255'/>
<machine name='pc-0.14' maxCpus='255'/>
<machine name='pc-1.1' maxCpus='255'/>
<machine name='pc-i440fx-2.1' maxCpus='255'/>
<machine name='pc-q35-1.7' maxCpus='255'/>
<machine name='pc-1.0' maxCpus='255'/>
<machine name='pc-i440fx-2.0' maxCpus='255'/>
<machine name='pc-q35-2.4' alias='q35' maxCpus='255'/>
<machine name='pc-q35-2.3' maxCpus='255'/>
<machine name='pc-0.13' maxCpus='255'/>
</qemuCaps> </qemuCaps>

View File

@ -22,7 +22,8 @@
#include "testutils.h" #include "testutils.h"
#include "testutilsqemu.h" #include "testutilsqemu.h"
#include "qemumonitortestutils.h" #include "qemumonitortestutils.h"
#define __QEMU_CAPSRIV_H_ALLOW__
#include "qemu/qemu_capspriv.h"
#define VIR_FROM_THIS VIR_FROM_NONE #define VIR_FROM_THIS VIR_FROM_NONE
@ -85,42 +86,17 @@ testQemuFeedMonitor(char *replies,
return NULL; return NULL;
} }
static int
testQemuCapsCompare(virQEMUCapsPtr capsExpected,
virQEMUCapsPtr capsActual)
{
int ret = 0;
size_t i;
for (i = 0; i < QEMU_CAPS_LAST; i++) {
if (virQEMUCapsGet(capsExpected, i) &&
!virQEMUCapsGet(capsActual, i)) {
fprintf(stderr, "Expected caps flag not set: %s\n",
virQEMUCapsTypeToString(i));
ret = -1;
}
if (!virQEMUCapsGet(capsExpected, i) &&
virQEMUCapsGet(capsActual, i)) {
fprintf(stderr, "Unexpected caps flag set: %s\n",
virQEMUCapsTypeToString(i));
ret = -1;
}
}
return ret;
}
static int static int
testQemuCaps(const void *opaque) testQemuCaps(const void *opaque)
{ {
int ret = -1; int ret = -1;
const testQemuData *data = opaque; const testQemuData *data = opaque;
char *repliesFile = NULL, *capsFile = NULL; char *repliesFile = NULL;
char *capsFile = NULL;
char *replies = NULL; char *replies = NULL;
qemuMonitorTestPtr mon = NULL; qemuMonitorTestPtr mon = NULL;
virQEMUCapsPtr capsExpected = NULL;
virQEMUCapsPtr capsActual = NULL; virQEMUCapsPtr capsActual = NULL;
char *actual = NULL;
if (virAsprintf(&repliesFile, "%s/qemucapabilitiesdata/%s.%s.replies", if (virAsprintf(&repliesFile, "%s/qemucapabilitiesdata/%s.%s.replies",
abs_srcdir, data->base, data->archName) < 0 || abs_srcdir, data->base, data->archName) < 0 ||
@ -134,17 +110,15 @@ testQemuCaps(const void *opaque)
if (!(mon = testQemuFeedMonitor(replies, data->xmlopt))) if (!(mon = testQemuFeedMonitor(replies, data->xmlopt)))
goto cleanup; goto cleanup;
if (!(capsExpected = qemuTestParseCapabilities(capsFile))) if (!(capsActual = virQEMUCapsNew()) ||
goto cleanup; virQEMUCapsInitQMPMonitor(capsActual,
if (!(capsActual = virQEMUCapsNew()))
goto cleanup;
if (virQEMUCapsInitQMPMonitor(capsActual,
qemuMonitorTestGetMonitor(mon)) < 0) qemuMonitorTestGetMonitor(mon)) < 0)
goto cleanup; goto cleanup;
if (testQemuCapsCompare(capsExpected, capsActual) < 0) if (!(actual = virQEMUCapsFormatCache(capsActual, 0, 0)))
goto cleanup;
if (virtTestCompareToFile(actual, capsFile) < 0)
goto cleanup; goto cleanup;
ret = 0; ret = 0;
@ -152,8 +126,8 @@ testQemuCaps(const void *opaque)
VIR_FREE(repliesFile); VIR_FREE(repliesFile);
VIR_FREE(capsFile); VIR_FREE(capsFile);
VIR_FREE(replies); VIR_FREE(replies);
VIR_FREE(actual);
qemuMonitorTestFree(mon); qemuMonitorTestFree(mon);
virObjectUnref(capsExpected);
virObjectUnref(capsActual); virObjectUnref(capsActual);
return ret; return ret;
} }

View File

@ -452,48 +452,19 @@ virQEMUCapsPtr
qemuTestParseCapabilities(const char *capsFile) qemuTestParseCapabilities(const char *capsFile)
{ {
virQEMUCapsPtr qemuCaps = NULL; virQEMUCapsPtr qemuCaps = NULL;
xmlDocPtr xml; time_t qemuctime;
xmlXPathContextPtr ctxt = NULL; time_t selfctime;
ssize_t i, n; unsigned long version;
xmlNodePtr *nodes = NULL;
if (!(xml = virXMLParseFileCtxt(capsFile, &ctxt))) if (!(qemuCaps = virQEMUCapsNew()) ||
virQEMUCapsLoadCache(qemuCaps, capsFile,
&qemuctime, &selfctime, &version) < 0)
goto error; goto error;
if ((n = virXPathNodeSet("/qemuCaps/flag", ctxt, &nodes)) < 0) {
fprintf(stderr, "failed to parse qemu capabilities flags");
goto error;
}
if (n > 0) {
if (!(qemuCaps = virQEMUCapsNew()))
goto error;
for (i = 0; i < n; i++) {
char *str = virXMLPropString(nodes[i], "name");
if (str) {
int flag = virQEMUCapsTypeFromString(str);
if (flag < 0) {
fprintf(stderr, "Unknown qemu capabilities flag %s", str);
VIR_FREE(str);
goto error;
}
VIR_FREE(str);
virQEMUCapsSet(qemuCaps, flag);
}
}
}
VIR_FREE(nodes);
xmlFreeDoc(xml);
xmlXPathFreeContext(ctxt);
return qemuCaps; return qemuCaps;
error: error:
VIR_FREE(nodes);
virObjectUnref(qemuCaps); virObjectUnref(qemuCaps);
xmlFreeDoc(xml);
xmlXPathFreeContext(ctxt);
return NULL; return NULL;
} }