
Add auto generated test data for domaincaps and qemucaps2xml tests to exercise parsing mshv capability. Signed-off-by: Praveen K Paladugu <prapal@linux.microsoft.com> --- .../qemu_10.1.0-q35.x86_64+mshv.xml | 222 ++ .../qemu_10.1.0-tcg.x86_64+mshv.xml | 1810 +++++++++++++++++ .../qemu_10.1.0.x86_64+mshv.xml | 222 ++ .../qemucaps2xmloutdata/caps.x86_64+mshv.xml | 29 + 4 files changed, 2283 insertions(+) create mode 100644 tests/domaincapsdata/qemu_10.1.0-q35.x86_64+mshv.xml create mode 100644 tests/domaincapsdata/qemu_10.1.0-tcg.x86_64+mshv.xml create mode 100644 tests/domaincapsdata/qemu_10.1.0.x86_64+mshv.xml create mode 100644 tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml diff --git a/tests/domaincapsdata/qemu_10.1.0-q35.x86_64+mshv.xml b/tests/domaincapsdata/qemu_10.1.0-q35.x86_64+mshv.xml new file mode 100644 index 0000000000..97f60804bc --- /dev/null +++ b/tests/domaincapsdata/qemu_10.1.0-q35.x86_64+mshv.xml @@ -0,0 +1,222 @@ +<domainCapabilities> + <path>/usr/bin/qemu-system-x86_64</path> + <domain>kvm</domain> + <machine>pc-q35-10.1</machine> + <arch>x86_64</arch> + <iothreads supported='yes'/> + <os supported='yes'> + <enum name='firmware'> + <value>bios</value> + <value>efi</value> + </enum> + <loader supported='yes'> + <value>/obviously/fake/firmware1.fd</value> + <value>/obviously/fake/firmware2.fd</value> + <enum name='type'> + <value>rom</value> + <value>pflash</value> + </enum> + <enum name='readonly'> + <value>yes</value> + <value>no</value> + </enum> + <enum name='secure'> + <value>yes</value> + <value>no</value> + </enum> + </loader> + </os> + <cpu> + <mode name='host-passthrough' supported='yes'> + <enum name='hostPassthroughMigratable'> + <value>on</value> + <value>off</value> + </enum> + </mode> + <mode name='maximum' supported='yes'> + <enum name='maximumMigratable'> + <value>on</value> + <value>off</value> + </enum> + </mode> + <mode name='host-model' supported='no'/> + <mode name='custom' supported='no'/> + </cpu> + <memoryBacking supported='yes'> + <enum name='sourceType'> + <value>file</value> + <value>anonymous</value> + <value>memfd</value> + </enum> + </memoryBacking> + <devices> + <disk supported='yes'> + <enum name='diskDevice'> + <value>disk</value> + <value>cdrom</value> + <value>floppy</value> + <value>lun</value> + </enum> + <enum name='bus'> + <value>fdc</value> + <value>scsi</value> + <value>virtio</value> + <value>usb</value> + <value>sata</value> + <value>nvme</value> + </enum> + <enum name='model'> + <value>virtio</value> + <value>virtio-transitional</value> + <value>virtio-non-transitional</value> + </enum> + </disk> + <graphics supported='yes'> + <enum name='type'> + <value>vnc</value> + <value>rdp</value> + <value>egl-headless</value> + <value>dbus</value> + </enum> + </graphics> + <video supported='yes'> + <enum name='modelType'> + <value>vga</value> + <value>cirrus</value> + <value>vmvga</value> + <value>virtio</value> + <value>none</value> + <value>bochs</value> + <value>ramfb</value> + </enum> + </video> + <hostdev supported='yes'> + <enum name='mode'> + <value>subsystem</value> + </enum> + <enum name='startupPolicy'> + <value>default</value> + <value>mandatory</value> + <value>requisite</value> + <value>optional</value> + </enum> + <enum name='subsysType'> + <value>usb</value> + <value>pci</value> + <value>scsi</value> + </enum> + <enum name='capsType'/> + <enum name='pciBackend'> + <value>default</value> + <value>vfio</value> + </enum> + </hostdev> + <rng supported='yes'> + <enum name='model'> + <value>virtio</value> + <value>virtio-transitional</value> + <value>virtio-non-transitional</value> + </enum> + <enum name='backendModel'> + <value>random</value> + <value>egd</value> + <value>builtin</value> + </enum> + </rng> + <filesystem supported='yes'> + <enum name='driverType'> + <value>path</value> + <value>handle</value> + <value>virtiofs</value> + </enum> + </filesystem> + <tpm supported='yes'> + <enum name='model'> + <value>tpm-tis</value> + <value>tpm-crb</value> + </enum> + <enum name='backendModel'> + <value>passthrough</value> + <value>emulator</value> + <value>external</value> + </enum> + <enum name='backendVersion'> + <value>2.0</value> + </enum> + </tpm> + <redirdev supported='yes'> + <enum name='bus'> + <value>usb</value> + </enum> + </redirdev> + <channel supported='yes'> + <enum name='type'> + <value>pty</value> + <value>unix</value> + </enum> + </channel> + <crypto supported='yes'> + <enum name='model'> + <value>virtio</value> + </enum> + <enum name='type'> + <value>qemu</value> + </enum> + <enum name='backendModel'> + <value>builtin</value> + <value>lkcf</value> + </enum> + </crypto> + <interface supported='yes'> + <enum name='backendType'> + <value>default</value> + <value>passt</value> + </enum> + </interface> + <panic supported='yes'> + <enum name='model'> + <value>isa</value> + <value>hyperv</value> + <value>pvpanic</value> + </enum> + </panic> + <console supported='yes'> + <enum name='type'> + <value>null</value> + <value>vc</value> + <value>pty</value> + <value>dev</value> + <value>file</value> + <value>pipe</value> + <value>stdio</value> + <value>udp</value> + <value>tcp</value> + <value>unix</value> + <value>dbus</value> + </enum> + </console> + </devices> + <features> + <gic supported='no'/> + <vmcoreinfo supported='yes'/> + <genid supported='yes'/> + <backingStoreInput supported='yes'/> + <backup supported='yes'/> + <async-teardown supported='yes'/> + <ps2 supported='yes'/> + <tdx supported='yes'/> + <sev supported='no'/> + <sgx supported='no'/> + <hyperv supported='yes'> + <enum name='features'> + <value>spinlocks</value> + <value>vendor_id</value> + </enum> + </hyperv> + <launchSecurity supported='yes'> + <enum name='sectype'> + <value>tdx</value> + </enum> + </launchSecurity> + </features> +</domainCapabilities> diff --git a/tests/domaincapsdata/qemu_10.1.0-tcg.x86_64+mshv.xml b/tests/domaincapsdata/qemu_10.1.0-tcg.x86_64+mshv.xml new file mode 100644 index 0000000000..7051339301 --- /dev/null +++ b/tests/domaincapsdata/qemu_10.1.0-tcg.x86_64+mshv.xml @@ -0,0 +1,1810 @@ +<domainCapabilities> + <path>/usr/bin/qemu-system-x86_64</path> + <domain>qemu</domain> + <machine>pc-i440fx-10.1</machine> + <arch>x86_64</arch> + <vcpu max='255'/> + <iothreads supported='yes'/> + <os supported='yes'> + <enum name='firmware'> + <value>bios</value> + <value>efi</value> + </enum> + <loader supported='yes'> + <value>/obviously/fake/firmware1.fd</value> + <value>/obviously/fake/firmware2.fd</value> + <enum name='type'> + <value>rom</value> + <value>pflash</value> + </enum> + <enum name='readonly'> + <value>yes</value> + <value>no</value> + </enum> + <enum name='secure'> + <value>no</value> + </enum> + </loader> + </os> + <cpu> + <mode name='host-passthrough' supported='no'/> + <mode name='maximum' supported='yes'> + <enum name='maximumMigratable'> + <value>on</value> + <value>off</value> + </enum> + </mode> + <mode name='host-model' supported='yes'> + <model fallback='forbid'>EPYC</model> + <vendor>AMD</vendor> + <feature policy='require' name='monitor'/> + <feature policy='require' name='x2apic'/> + <feature policy='require' name='hypervisor'/> + <feature policy='require' name='acpi'/> + <feature policy='require' name='ss'/> + <feature policy='require' name='erms'/> + <feature policy='require' name='mpx'/> + <feature policy='require' name='clwb'/> + <feature policy='require' name='umip'/> + <feature policy='require' name='pku'/> + <feature policy='require' name='vaes'/> + <feature policy='require' name='la57'/> + <feature policy='require' name='rdpid'/> + <feature policy='require' name='pks'/> + <feature policy='require' name='fsrm'/> + <feature policy='require' name='cmpccxadd'/> + <feature policy='require' name='fzrm'/> + <feature policy='require' name='fsrs'/> + <feature policy='require' name='fsrc'/> + <feature policy='require' name='cmp_legacy'/> + <feature policy='require' name='3dnowext'/> + <feature policy='require' name='3dnow'/> + <feature policy='require' name='xsaveerptr'/> + <feature policy='require' name='wbnoinvd'/> + <feature policy='require' name='npt'/> + <feature policy='require' name='vgif'/> + <feature policy='require' name='svme-addr-chk'/> + <feature policy='require' name='no-nested-data-bp'/> + <feature policy='require' name='null-sel-clr-base'/> + <feature policy='disable' name='vme'/> + <feature policy='disable' name='xsavec'/> + <feature policy='disable' name='misalignsse'/> + <feature policy='disable' name='osvw'/> + <feature policy='disable' name='topoext'/> + <feature policy='disable' name='fxsr_opt'/> + <feature policy='disable' name='nrip-save'/> + </mode> + <mode name='custom' supported='yes'> + <model usable='yes' vendor='unknown' canonical='486-v1'>486</model> + <model usable='yes' vendor='unknown'>486-v1</model> + <model usable='no' vendor='Intel' canonical='Broadwell-v1'>Broadwell</model> + <blockers model='Broadwell'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Broadwell-v3'>Broadwell-IBRS</model> + <blockers model='Broadwell-IBRS'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Broadwell-v2'>Broadwell-noTSX</model> + <blockers model='Broadwell-noTSX'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Broadwell-v4'>Broadwell-noTSX-IBRS</model> + <blockers model='Broadwell-noTSX-IBRS'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>Broadwell-v1</model> + <blockers model='Broadwell-v1'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>Broadwell-v2</model> + <blockers model='Broadwell-v2'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>Broadwell-v3</model> + <blockers model='Broadwell-v3'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>Broadwell-v4</model> + <blockers model='Broadwell-v4'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Cascadelake-Server-v1'>Cascadelake-Server</model> + <blockers model='Cascadelake-Server'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Cascadelake-Server-v3'>Cascadelake-Server-noTSX</model> + <blockers model='Cascadelake-Server-noTSX'> + <feature name='arch-capabilities'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Cascadelake-Server-v1</model> + <blockers model='Cascadelake-Server-v1'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Cascadelake-Server-v2</model> + <blockers model='Cascadelake-Server-v2'> + <feature name='arch-capabilities'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Cascadelake-Server-v3</model> + <blockers model='Cascadelake-Server-v3'> + <feature name='arch-capabilities'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Cascadelake-Server-v4</model> + <blockers model='Cascadelake-Server-v4'> + <feature name='arch-capabilities'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Cascadelake-Server-v5</model> + <blockers model='Cascadelake-Server-v5'> + <feature name='arch-capabilities'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='yes' vendor='Intel' canonical='Conroe-v1'>Conroe</model> + <model usable='yes' vendor='Intel'>Conroe-v1</model> + <model usable='no' vendor='Intel' canonical='Cooperlake-v1'>Cooperlake</model> + <blockers model='Cooperlake'> + <feature name='arch-capabilities'/> + <feature name='avx512-bf16'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='stibp'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Cooperlake-v1</model> + <blockers model='Cooperlake-v1'> + <feature name='arch-capabilities'/> + <feature name='avx512-bf16'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='stibp'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Cooperlake-v2</model> + <blockers model='Cooperlake-v2'> + <feature name='arch-capabilities'/> + <feature name='avx512-bf16'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='stibp'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Denverton-v1'>Denverton</model> + <blockers model='Denverton'> + <feature name='arch-capabilities'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Denverton-v1</model> + <blockers model='Denverton-v1'> + <feature name='arch-capabilities'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Denverton-v2</model> + <blockers model='Denverton-v2'> + <feature name='arch-capabilities'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Denverton-v3</model> + <blockers model='Denverton-v3'> + <feature name='arch-capabilities'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Hygon' canonical='Dhyana-v1'>Dhyana</model> + <blockers model='Dhyana'> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='topoext'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Hygon'>Dhyana-v1</model> + <blockers model='Dhyana-v1'> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='topoext'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Hygon'>Dhyana-v2</model> + <blockers model='Dhyana-v2'> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='topoext'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD' canonical='EPYC-v1'>EPYC</model> + <blockers model='EPYC'> + <feature name='fxsr_opt'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='topoext'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='AMD' canonical='EPYC-Genoa-v1'>EPYC-Genoa</model> + <blockers model='EPYC-Genoa'> + <feature name='amd-psfd'/> + <feature name='amd-ssbd'/> + <feature name='amd-stibp'/> + <feature name='auto-ibrs'/> + <feature name='avx512-bf16'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='gfni'/> + <feature name='ibpb'/> + <feature name='ibrs'/> + <feature name='invpcid'/> + <feature name='lfence-always-serializing'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='pcid'/> + <feature name='perfctr_core'/> + <feature name='stibp-always-on'/> + <feature name='topoext'/> + <feature name='vnmi'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-Genoa-v1</model> + <blockers model='EPYC-Genoa-v1'> + <feature name='amd-psfd'/> + <feature name='amd-ssbd'/> + <feature name='amd-stibp'/> + <feature name='auto-ibrs'/> + <feature name='avx512-bf16'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='gfni'/> + <feature name='ibpb'/> + <feature name='ibrs'/> + <feature name='invpcid'/> + <feature name='lfence-always-serializing'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='pcid'/> + <feature name='perfctr_core'/> + <feature name='stibp-always-on'/> + <feature name='topoext'/> + <feature name='vnmi'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD' canonical='EPYC-v2'>EPYC-IBPB</model> + <blockers model='EPYC-IBPB'> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='topoext'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='AMD' canonical='EPYC-Milan-v1'>EPYC-Milan</model> + <blockers model='EPYC-Milan'> + <feature name='amd-ssbd'/> + <feature name='amd-stibp'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='ibrs'/> + <feature name='invpcid'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='pcid'/> + <feature name='perfctr_core'/> + <feature name='topoext'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-Milan-v1</model> + <blockers model='EPYC-Milan-v1'> + <feature name='amd-ssbd'/> + <feature name='amd-stibp'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='ibrs'/> + <feature name='invpcid'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='pcid'/> + <feature name='perfctr_core'/> + <feature name='topoext'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-Milan-v2</model> + <blockers model='EPYC-Milan-v2'> + <feature name='amd-psfd'/> + <feature name='amd-ssbd'/> + <feature name='amd-stibp'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='ibrs'/> + <feature name='invpcid'/> + <feature name='lfence-always-serializing'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='pcid'/> + <feature name='perfctr_core'/> + <feature name='stibp-always-on'/> + <feature name='topoext'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model> + <blockers model='EPYC-Rome'> + <feature name='amd-stibp'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='perfctr_core'/> + <feature name='topoext'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-Rome-v1</model> + <blockers model='EPYC-Rome-v1'> + <feature name='amd-stibp'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='perfctr_core'/> + <feature name='topoext'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-Rome-v2</model> + <blockers model='EPYC-Rome-v2'> + <feature name='amd-ssbd'/> + <feature name='amd-stibp'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='ibrs'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='perfctr_core'/> + <feature name='topoext'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-Rome-v3</model> + <blockers model='EPYC-Rome-v3'> + <feature name='amd-ssbd'/> + <feature name='amd-stibp'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='ibrs'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='perfctr_core'/> + <feature name='topoext'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-Rome-v4</model> + <blockers model='EPYC-Rome-v4'> + <feature name='amd-ssbd'/> + <feature name='amd-stibp'/> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='ibrs'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='perfctr_core'/> + <feature name='topoext'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-v1</model> + <blockers model='EPYC-v1'> + <feature name='fxsr_opt'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='topoext'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-v2</model> + <blockers model='EPYC-v2'> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='topoext'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-v3</model> + <blockers model='EPYC-v3'> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='perfctr_core'/> + <feature name='topoext'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='AMD'>EPYC-v4</model> + <blockers model='EPYC-v4'> + <feature name='clzero'/> + <feature name='fxsr_opt'/> + <feature name='ibpb'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='osvw'/> + <feature name='perfctr_core'/> + <feature name='topoext'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel' canonical='GraniteRapids-v1'>GraniteRapids</model> + <blockers model='GraniteRapids'> + <feature name='amx-bf16'/> + <feature name='amx-fp16'/> + <feature name='amx-int8'/> + <feature name='amx-tile'/> + <feature name='arch-capabilities'/> + <feature name='avx-vnni'/> + <feature name='avx512-bf16'/> + <feature name='avx512-fp16'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='bus-lock-detect'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='mcdt-no'/> + <feature name='pcid'/> + <feature name='prefetchiti'/> + <feature name='rtm'/> + <feature name='serialize'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='tsx-ldtrk'/> + <feature name='vpclmulqdq'/> + <feature name='xfd'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel'>GraniteRapids-v1</model> + <blockers model='GraniteRapids-v1'> + <feature name='amx-bf16'/> + <feature name='amx-fp16'/> + <feature name='amx-int8'/> + <feature name='amx-tile'/> + <feature name='arch-capabilities'/> + <feature name='avx-vnni'/> + <feature name='avx512-bf16'/> + <feature name='avx512-fp16'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='bus-lock-detect'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='mcdt-no'/> + <feature name='pcid'/> + <feature name='prefetchiti'/> + <feature name='rtm'/> + <feature name='serialize'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='tsx-ldtrk'/> + <feature name='vpclmulqdq'/> + <feature name='xfd'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel'>GraniteRapids-v2</model> + <blockers model='GraniteRapids-v2'> + <feature name='amx-bf16'/> + <feature name='amx-fp16'/> + <feature name='amx-int8'/> + <feature name='amx-tile'/> + <feature name='arch-capabilities'/> + <feature name='avx-vnni'/> + <feature name='avx10'/> + <feature name='avx10-128'/> + <feature name='avx10-256'/> + <feature name='avx10-512'/> + <feature name='avx512-bf16'/> + <feature name='avx512-fp16'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='bus-lock-detect'/> + <feature name='cldemote'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='mcdt-no'/> + <feature name='movdir64b'/> + <feature name='movdiri'/> + <feature name='pcid'/> + <feature name='prefetchiti'/> + <feature name='rtm'/> + <feature name='serialize'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='tsc_adjust'/> + <feature name='tsx-ldtrk'/> + <feature name='vpclmulqdq'/> + <feature name='xfd'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Haswell-v1'>Haswell</model> + <blockers model='Haswell'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Haswell-v3'>Haswell-IBRS</model> + <blockers model='Haswell-IBRS'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Haswell-v2'>Haswell-noTSX</model> + <blockers model='Haswell-noTSX'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Haswell-v4'>Haswell-noTSX-IBRS</model> + <blockers model='Haswell-noTSX-IBRS'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>Haswell-v1</model> + <blockers model='Haswell-v1'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>Haswell-v2</model> + <blockers model='Haswell-v2'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>Haswell-v3</model> + <blockers model='Haswell-v3'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>Haswell-v4</model> + <blockers model='Haswell-v4'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Icelake-Server-v1'>Icelake-Server</model> + <blockers model='Icelake-Server'> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Icelake-Server-v2'>Icelake-Server-noTSX</model> + <blockers model='Icelake-Server-noTSX'> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='gfni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Icelake-Server-v1</model> + <blockers model='Icelake-Server-v1'> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Icelake-Server-v2</model> + <blockers model='Icelake-Server-v2'> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='gfni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Icelake-Server-v3</model> + <blockers model='Icelake-Server-v3'> + <feature name='arch-capabilities'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='gfni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Icelake-Server-v4</model> + <blockers model='Icelake-Server-v4'> + <feature name='arch-capabilities'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='gfni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Icelake-Server-v5</model> + <blockers model='Icelake-Server-v5'> + <feature name='arch-capabilities'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='gfni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel'>Icelake-Server-v6</model> + <blockers model='Icelake-Server-v6'> + <feature name='arch-capabilities'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='gfni'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel'>Icelake-Server-v7</model> + <blockers model='Icelake-Server-v7'> + <feature name='arch-capabilities'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel' canonical='IvyBridge-v1'>IvyBridge</model> + <blockers model='IvyBridge'> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='IvyBridge-v2'>IvyBridge-IBRS</model> + <blockers model='IvyBridge-IBRS'> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>IvyBridge-v1</model> + <blockers model='IvyBridge-v1'> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>IvyBridge-v2</model> + <blockers model='IvyBridge-v2'> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='KnightsMill-v1'>KnightsMill</model> + <blockers model='KnightsMill'> + <feature name='avx512-4fmaps'/> + <feature name='avx512-4vnniw'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512cd'/> + <feature name='avx512er'/> + <feature name='avx512f'/> + <feature name='avx512pf'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>KnightsMill-v1</model> + <blockers model='KnightsMill-v1'> + <feature name='avx512-4fmaps'/> + <feature name='avx512-4vnniw'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512cd'/> + <feature name='avx512er'/> + <feature name='avx512f'/> + <feature name='avx512pf'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='yes' vendor='Intel' canonical='Nehalem-v1'>Nehalem</model> + <model usable='no' vendor='Intel' canonical='Nehalem-v2'>Nehalem-IBRS</model> + <blockers model='Nehalem-IBRS'> + <feature name='spec-ctrl'/> + </blockers> + <model usable='yes' vendor='Intel'>Nehalem-v1</model> + <model usable='no' vendor='Intel'>Nehalem-v2</model> + <blockers model='Nehalem-v2'> + <feature name='spec-ctrl'/> + </blockers> + <model usable='yes' vendor='AMD' canonical='Opteron_G1-v1'>Opteron_G1</model> + <model usable='yes' vendor='AMD'>Opteron_G1-v1</model> + <model usable='yes' vendor='AMD' canonical='Opteron_G2-v1'>Opteron_G2</model> + <model usable='yes' vendor='AMD'>Opteron_G2-v1</model> + <model usable='no' vendor='AMD' canonical='Opteron_G3-v1'>Opteron_G3</model> + <blockers model='Opteron_G3'> + <feature name='misalignsse'/> + </blockers> + <model usable='no' vendor='AMD'>Opteron_G3-v1</model> + <blockers model='Opteron_G3-v1'> + <feature name='misalignsse'/> + </blockers> + <model usable='no' vendor='AMD' canonical='Opteron_G4-v1'>Opteron_G4</model> + <blockers model='Opteron_G4'> + <feature name='fma4'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='xop'/> + </blockers> + <model usable='no' vendor='AMD'>Opteron_G4-v1</model> + <blockers model='Opteron_G4-v1'> + <feature name='fma4'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='xop'/> + </blockers> + <model usable='no' vendor='AMD' canonical='Opteron_G5-v1'>Opteron_G5</model> + <blockers model='Opteron_G5'> + <feature name='fma4'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='tbm'/> + <feature name='xop'/> + </blockers> + <model usable='no' vendor='AMD'>Opteron_G5-v1</model> + <blockers model='Opteron_G5-v1'> + <feature name='fma4'/> + <feature name='misalignsse'/> + <feature name='nrip-save'/> + <feature name='tbm'/> + <feature name='xop'/> + </blockers> + <model usable='yes' vendor='Intel' canonical='Penryn-v1'>Penryn</model> + <model usable='yes' vendor='Intel'>Penryn-v1</model> + <model usable='no' vendor='Intel' canonical='SandyBridge-v1'>SandyBridge</model> + <blockers model='SandyBridge'> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='SandyBridge-v2'>SandyBridge-IBRS</model> + <blockers model='SandyBridge-IBRS'> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>SandyBridge-v1</model> + <blockers model='SandyBridge-v1'> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel'>SandyBridge-v2</model> + <blockers model='SandyBridge-v2'> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + </blockers> + <model usable='no' vendor='Intel' canonical='SapphireRapids-v1'>SapphireRapids</model> + <blockers model='SapphireRapids'> + <feature name='amx-bf16'/> + <feature name='amx-int8'/> + <feature name='amx-tile'/> + <feature name='arch-capabilities'/> + <feature name='avx-vnni'/> + <feature name='avx512-bf16'/> + <feature name='avx512-fp16'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='bus-lock-detect'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='serialize'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='tsx-ldtrk'/> + <feature name='vpclmulqdq'/> + <feature name='xfd'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel'>SapphireRapids-v1</model> + <blockers model='SapphireRapids-v1'> + <feature name='amx-bf16'/> + <feature name='amx-int8'/> + <feature name='amx-tile'/> + <feature name='arch-capabilities'/> + <feature name='avx-vnni'/> + <feature name='avx512-bf16'/> + <feature name='avx512-fp16'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='bus-lock-detect'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='serialize'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='tsx-ldtrk'/> + <feature name='vpclmulqdq'/> + <feature name='xfd'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel'>SapphireRapids-v2</model> + <blockers model='SapphireRapids-v2'> + <feature name='amx-bf16'/> + <feature name='amx-int8'/> + <feature name='amx-tile'/> + <feature name='arch-capabilities'/> + <feature name='avx-vnni'/> + <feature name='avx512-bf16'/> + <feature name='avx512-fp16'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='bus-lock-detect'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='serialize'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='tsx-ldtrk'/> + <feature name='vpclmulqdq'/> + <feature name='xfd'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel'>SapphireRapids-v3</model> + <blockers model='SapphireRapids-v3'> + <feature name='amx-bf16'/> + <feature name='amx-int8'/> + <feature name='amx-tile'/> + <feature name='arch-capabilities'/> + <feature name='avx-vnni'/> + <feature name='avx512-bf16'/> + <feature name='avx512-fp16'/> + <feature name='avx512-vpopcntdq'/> + <feature name='avx512bitalg'/> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512ifma'/> + <feature name='avx512vbmi'/> + <feature name='avx512vbmi2'/> + <feature name='avx512vl'/> + <feature name='avx512vnni'/> + <feature name='bus-lock-detect'/> + <feature name='cldemote'/> + <feature name='gfni'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='movdir64b'/> + <feature name='movdiri'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='serialize'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='tsc_adjust'/> + <feature name='tsx-ldtrk'/> + <feature name='vpclmulqdq'/> + <feature name='xfd'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel' canonical='SierraForest-v1'>SierraForest</model> + <blockers model='SierraForest'> + <feature name='arch-capabilities'/> + <feature name='avx-ifma'/> + <feature name='avx-ne-convert'/> + <feature name='avx-vnni'/> + <feature name='avx-vnni-int8'/> + <feature name='bus-lock-detect'/> + <feature name='gfni'/> + <feature name='invpcid'/> + <feature name='mcdt-no'/> + <feature name='pcid'/> + <feature name='serialize'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel'>SierraForest-v1</model> + <blockers model='SierraForest-v1'> + <feature name='arch-capabilities'/> + <feature name='avx-ifma'/> + <feature name='avx-ne-convert'/> + <feature name='avx-vnni'/> + <feature name='avx-vnni-int8'/> + <feature name='bus-lock-detect'/> + <feature name='gfni'/> + <feature name='invpcid'/> + <feature name='mcdt-no'/> + <feature name='pcid'/> + <feature name='serialize'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='vpclmulqdq'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Skylake-Client-v1'>Skylake-Client</model> + <blockers model='Skylake-Client'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Skylake-Client-v2'>Skylake-Client-IBRS</model> + <blockers model='Skylake-Client-IBRS'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Skylake-Client-v3'>Skylake-Client-noTSX-IBRS</model> + <blockers model='Skylake-Client-noTSX-IBRS'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Skylake-Client-v1</model> + <blockers model='Skylake-Client-v1'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Skylake-Client-v2</model> + <blockers model='Skylake-Client-v2'> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Skylake-Client-v3</model> + <blockers model='Skylake-Client-v3'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Skylake-Client-v4</model> + <blockers model='Skylake-Client-v4'> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Skylake-Server-v1'>Skylake-Server</model> + <blockers model='Skylake-Server'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Skylake-Server-v2'>Skylake-Server-IBRS</model> + <blockers model='Skylake-Server-IBRS'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Skylake-Server-v3'>Skylake-Server-noTSX-IBRS</model> + <blockers model='Skylake-Server-noTSX-IBRS'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Skylake-Server-v1</model> + <blockers model='Skylake-Server-v1'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Skylake-Server-v2</model> + <blockers model='Skylake-Server-v2'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='hle'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='rtm'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Skylake-Server-v3</model> + <blockers model='Skylake-Server-v3'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Skylake-Server-v4</model> + <blockers model='Skylake-Server-v4'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Skylake-Server-v5</model> + <blockers model='Skylake-Server-v5'> + <feature name='avx512bw'/> + <feature name='avx512cd'/> + <feature name='avx512dq'/> + <feature name='avx512f'/> + <feature name='avx512vl'/> + <feature name='invpcid'/> + <feature name='pcid'/> + <feature name='spec-ctrl'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel' canonical='Snowridge-v1'>Snowridge</model> + <blockers model='Snowridge'> + <feature name='arch-capabilities'/> + <feature name='cldemote'/> + <feature name='core-capability'/> + <feature name='gfni'/> + <feature name='movdir64b'/> + <feature name='movdiri'/> + <feature name='spec-ctrl'/> + <feature name='split-lock-detect'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Snowridge-v1</model> + <blockers model='Snowridge-v1'> + <feature name='arch-capabilities'/> + <feature name='cldemote'/> + <feature name='core-capability'/> + <feature name='gfni'/> + <feature name='movdir64b'/> + <feature name='movdiri'/> + <feature name='spec-ctrl'/> + <feature name='split-lock-detect'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Snowridge-v2</model> + <blockers model='Snowridge-v2'> + <feature name='arch-capabilities'/> + <feature name='cldemote'/> + <feature name='core-capability'/> + <feature name='gfni'/> + <feature name='movdir64b'/> + <feature name='movdiri'/> + <feature name='spec-ctrl'/> + <feature name='split-lock-detect'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + </blockers> + <model usable='no' vendor='Intel'>Snowridge-v3</model> + <blockers model='Snowridge-v3'> + <feature name='arch-capabilities'/> + <feature name='cldemote'/> + <feature name='core-capability'/> + <feature name='gfni'/> + <feature name='movdir64b'/> + <feature name='movdiri'/> + <feature name='spec-ctrl'/> + <feature name='split-lock-detect'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='no' vendor='Intel'>Snowridge-v4</model> + <blockers model='Snowridge-v4'> + <feature name='arch-capabilities'/> + <feature name='cldemote'/> + <feature name='gfni'/> + <feature name='movdir64b'/> + <feature name='movdiri'/> + <feature name='spec-ctrl'/> + <feature name='ssbd'/> + <feature name='tsc-deadline'/> + <feature name='xsavec'/> + <feature name='xsaves'/> + </blockers> + <model usable='yes' vendor='Intel' canonical='Westmere-v1'>Westmere</model> + <model usable='no' vendor='Intel' canonical='Westmere-v2'>Westmere-IBRS</model> + <blockers model='Westmere-IBRS'> + <feature name='spec-ctrl'/> + </blockers> + <model usable='yes' vendor='Intel'>Westmere-v1</model> + <model usable='no' vendor='Intel'>Westmere-v2</model> + <blockers model='Westmere-v2'> + <feature name='spec-ctrl'/> + </blockers> + <model usable='yes' vendor='AMD' canonical='athlon-v1'>athlon</model> + <model usable='yes' vendor='AMD'>athlon-v1</model> + <model usable='yes' vendor='Intel' canonical='core2duo-v1'>core2duo</model> + <model usable='yes' vendor='Intel'>core2duo-v1</model> + <model usable='yes' vendor='Intel' canonical='coreduo-v1'>coreduo</model> + <model usable='yes' vendor='Intel'>coreduo-v1</model> + <model usable='yes' vendor='unknown' canonical='kvm32-v1'>kvm32</model> + <model usable='yes' vendor='unknown'>kvm32-v1</model> + <model usable='yes' vendor='unknown' canonical='kvm64-v1'>kvm64</model> + <model usable='yes' vendor='unknown'>kvm64-v1</model> + <model usable='yes' vendor='Intel' canonical='n270-v1'>n270</model> + <model usable='yes' vendor='Intel'>n270-v1</model> + <model usable='yes' vendor='unknown' canonical='pentium-v1'>pentium</model> + <model usable='yes' vendor='unknown'>pentium-v1</model> + <model usable='yes' vendor='unknown' canonical='pentium2-v1'>pentium2</model> + <model usable='yes' vendor='unknown'>pentium2-v1</model> + <model usable='yes' vendor='unknown' canonical='pentium3-v1'>pentium3</model> + <model usable='yes' vendor='unknown'>pentium3-v1</model> + <model usable='no' vendor='AMD' canonical='phenom-v1'>phenom</model> + <blockers model='phenom'> + <feature name='fxsr_opt'/> + </blockers> + <model usable='no' vendor='AMD'>phenom-v1</model> + <blockers model='phenom-v1'> + <feature name='fxsr_opt'/> + </blockers> + <model usable='yes' vendor='unknown' canonical='qemu32-v1'>qemu32</model> + <model usable='yes' vendor='unknown'>qemu32-v1</model> + <model usable='yes' vendor='unknown' canonical='qemu64-v1'>qemu64</model> + <model usable='yes' vendor='unknown'>qemu64-v1</model> + </mode> + </cpu> + <memoryBacking supported='yes'> + <enum name='sourceType'> + <value>file</value> + <value>anonymous</value> + <value>memfd</value> + </enum> + </memoryBacking> + <devices> + <disk supported='yes'> + <enum name='diskDevice'> + <value>disk</value> + <value>cdrom</value> + <value>floppy</value> + <value>lun</value> + </enum> + <enum name='bus'> + <value>ide</value> + <value>fdc</value> + <value>scsi</value> + <value>virtio</value> + <value>usb</value> + <value>sata</value> + <value>nvme</value> + </enum> + <enum name='model'> + <value>virtio</value> + <value>virtio-transitional</value> + <value>virtio-non-transitional</value> + </enum> + </disk> + <graphics supported='yes'> + <enum name='type'> + <value>vnc</value> + <value>rdp</value> + <value>egl-headless</value> + <value>dbus</value> + </enum> + </graphics> + <video supported='yes'> + <enum name='modelType'> + <value>vga</value> + <value>cirrus</value> + <value>vmvga</value> + <value>virtio</value> + <value>none</value> + <value>bochs</value> + <value>ramfb</value> + </enum> + </video> + <hostdev supported='yes'> + <enum name='mode'> + <value>subsystem</value> + </enum> + <enum name='startupPolicy'> + <value>default</value> + <value>mandatory</value> + <value>requisite</value> + <value>optional</value> + </enum> + <enum name='subsysType'> + <value>usb</value> + <value>pci</value> + <value>scsi</value> + </enum> + <enum name='capsType'/> + <enum name='pciBackend'> + <value>default</value> + <value>vfio</value> + </enum> + </hostdev> + <rng supported='yes'> + <enum name='model'> + <value>virtio</value> + <value>virtio-transitional</value> + <value>virtio-non-transitional</value> + </enum> + <enum name='backendModel'> + <value>random</value> + <value>egd</value> + <value>builtin</value> + </enum> + </rng> + <filesystem supported='yes'> + <enum name='driverType'> + <value>path</value> + <value>handle</value> + <value>virtiofs</value> + </enum> + </filesystem> + <tpm supported='yes'> + <enum name='model'> + <value>tpm-tis</value> + <value>tpm-crb</value> + </enum> + <enum name='backendModel'> + <value>passthrough</value> + <value>emulator</value> + <value>external</value> + </enum> + <enum name='backendVersion'> + <value>2.0</value> + </enum> + </tpm> + <redirdev supported='yes'> + <enum name='bus'> + <value>usb</value> + </enum> + </redirdev> + <channel supported='yes'> + <enum name='type'> + <value>pty</value> + <value>unix</value> + </enum> + </channel> + <crypto supported='yes'> + <enum name='model'> + <value>virtio</value> + </enum> + <enum name='type'> + <value>qemu</value> + </enum> + <enum name='backendModel'> + <value>builtin</value> + <value>lkcf</value> + </enum> + </crypto> + <interface supported='yes'> + <enum name='backendType'> + <value>default</value> + <value>passt</value> + </enum> + </interface> + <panic supported='yes'> + <enum name='model'> + <value>isa</value> + <value>hyperv</value> + <value>pvpanic</value> + </enum> + </panic> + <console supported='yes'> + <enum name='type'> + <value>null</value> + <value>vc</value> + <value>pty</value> + <value>dev</value> + <value>file</value> + <value>pipe</value> + <value>stdio</value> + <value>udp</value> + <value>tcp</value> + <value>unix</value> + <value>dbus</value> + </enum> + </console> + </devices> + <features> + <gic supported='no'/> + <vmcoreinfo supported='yes'/> + <genid supported='yes'/> + <backingStoreInput supported='yes'/> + <backup supported='yes'/> + <async-teardown supported='yes'/> + <ps2 supported='yes'/> + <sev supported='no'/> + <sgx supported='no'/> + <hyperv supported='yes'> + <enum name='features'> + <value>spinlocks</value> + <value>vendor_id</value> + </enum> + </hyperv> + <launchSecurity supported='yes'> + <enum name='sectype'> + <value>tdx</value> + </enum> + </launchSecurity> + </features> +</domainCapabilities> diff --git a/tests/domaincapsdata/qemu_10.1.0.x86_64+mshv.xml b/tests/domaincapsdata/qemu_10.1.0.x86_64+mshv.xml new file mode 100644 index 0000000000..f8077c18f5 --- /dev/null +++ b/tests/domaincapsdata/qemu_10.1.0.x86_64+mshv.xml @@ -0,0 +1,222 @@ +<domainCapabilities> + <path>/usr/bin/qemu-system-x86_64</path> + <domain>kvm</domain> + <machine>pc-i440fx-10.1</machine> + <arch>x86_64</arch> + <iothreads supported='yes'/> + <os supported='yes'> + <enum name='firmware'> + <value>bios</value> + <value>efi</value> + </enum> + <loader supported='yes'> + <value>/obviously/fake/firmware1.fd</value> + <value>/obviously/fake/firmware2.fd</value> + <enum name='type'> + <value>rom</value> + <value>pflash</value> + </enum> + <enum name='readonly'> + <value>yes</value> + <value>no</value> + </enum> + <enum name='secure'> + <value>no</value> + </enum> + </loader> + </os> + <cpu> + <mode name='host-passthrough' supported='yes'> + <enum name='hostPassthroughMigratable'> + <value>on</value> + <value>off</value> + </enum> + </mode> + <mode name='maximum' supported='yes'> + <enum name='maximumMigratable'> + <value>on</value> + <value>off</value> + </enum> + </mode> + <mode name='host-model' supported='no'/> + <mode name='custom' supported='no'/> + </cpu> + <memoryBacking supported='yes'> + <enum name='sourceType'> + <value>file</value> + <value>anonymous</value> + <value>memfd</value> + </enum> + </memoryBacking> + <devices> + <disk supported='yes'> + <enum name='diskDevice'> + <value>disk</value> + <value>cdrom</value> + <value>floppy</value> + <value>lun</value> + </enum> + <enum name='bus'> + <value>ide</value> + <value>fdc</value> + <value>scsi</value> + <value>virtio</value> + <value>usb</value> + <value>sata</value> + <value>nvme</value> + </enum> + <enum name='model'> + <value>virtio</value> + <value>virtio-transitional</value> + <value>virtio-non-transitional</value> + </enum> + </disk> + <graphics supported='yes'> + <enum name='type'> + <value>vnc</value> + <value>rdp</value> + <value>egl-headless</value> + <value>dbus</value> + </enum> + </graphics> + <video supported='yes'> + <enum name='modelType'> + <value>vga</value> + <value>cirrus</value> + <value>vmvga</value> + <value>virtio</value> + <value>none</value> + <value>bochs</value> + <value>ramfb</value> + </enum> + </video> + <hostdev supported='yes'> + <enum name='mode'> + <value>subsystem</value> + </enum> + <enum name='startupPolicy'> + <value>default</value> + <value>mandatory</value> + <value>requisite</value> + <value>optional</value> + </enum> + <enum name='subsysType'> + <value>usb</value> + <value>pci</value> + <value>scsi</value> + </enum> + <enum name='capsType'/> + <enum name='pciBackend'> + <value>default</value> + <value>vfio</value> + </enum> + </hostdev> + <rng supported='yes'> + <enum name='model'> + <value>virtio</value> + <value>virtio-transitional</value> + <value>virtio-non-transitional</value> + </enum> + <enum name='backendModel'> + <value>random</value> + <value>egd</value> + <value>builtin</value> + </enum> + </rng> + <filesystem supported='yes'> + <enum name='driverType'> + <value>path</value> + <value>handle</value> + <value>virtiofs</value> + </enum> + </filesystem> + <tpm supported='yes'> + <enum name='model'> + <value>tpm-tis</value> + <value>tpm-crb</value> + </enum> + <enum name='backendModel'> + <value>passthrough</value> + <value>emulator</value> + <value>external</value> + </enum> + <enum name='backendVersion'> + <value>2.0</value> + </enum> + </tpm> + <redirdev supported='yes'> + <enum name='bus'> + <value>usb</value> + </enum> + </redirdev> + <channel supported='yes'> + <enum name='type'> + <value>pty</value> + <value>unix</value> + </enum> + </channel> + <crypto supported='yes'> + <enum name='model'> + <value>virtio</value> + </enum> + <enum name='type'> + <value>qemu</value> + </enum> + <enum name='backendModel'> + <value>builtin</value> + <value>lkcf</value> + </enum> + </crypto> + <interface supported='yes'> + <enum name='backendType'> + <value>default</value> + <value>passt</value> + </enum> + </interface> + <panic supported='yes'> + <enum name='model'> + <value>isa</value> + <value>hyperv</value> + <value>pvpanic</value> + </enum> + </panic> + <console supported='yes'> + <enum name='type'> + <value>null</value> + <value>vc</value> + <value>pty</value> + <value>dev</value> + <value>file</value> + <value>pipe</value> + <value>stdio</value> + <value>udp</value> + <value>tcp</value> + <value>unix</value> + <value>dbus</value> + </enum> + </console> + </devices> + <features> + <gic supported='no'/> + <vmcoreinfo supported='yes'/> + <genid supported='yes'/> + <backingStoreInput supported='yes'/> + <backup supported='yes'/> + <async-teardown supported='yes'/> + <ps2 supported='yes'/> + <tdx supported='yes'/> + <sev supported='no'/> + <sgx supported='no'/> + <hyperv supported='yes'> + <enum name='features'> + <value>spinlocks</value> + <value>vendor_id</value> + </enum> + </hyperv> + <launchSecurity supported='yes'> + <enum name='sectype'> + <value>tdx</value> + </enum> + </launchSecurity> + </features> +</domainCapabilities> diff --git a/tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml b/tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml new file mode 100644 index 0000000000..9d0a5d32b5 --- /dev/null +++ b/tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml @@ -0,0 +1,29 @@ +<capabilities> + + <host> + <cpu> + <arch>x86_64</arch> + </cpu> + <power_management/> + <iommu support='no'/> + </host> + + <guest> + <os_type>hvm</os_type> + <arch name='x86_64'> + <wordsize>64</wordsize> + <emulator>/usr/bin/qemu-system-x86_64</emulator> + <domain type='qemu'/> + <domain type='hyperv'/> + </arch> + <features> + <acpi default='on' toggle='yes'/> + <apic default='on' toggle='no'/> + <cpuselection/> + <deviceboot/> + <disksnapshot default='on' toggle='no'/> + <externalSnapshot/> + </features> + </guest> + +</capabilities> -- 2.50.1