Signed-off-by: Tim Wiederhake <twiederh@xxxxxxxxxx> --- docs/formatdomain.rst | 2 ++ src/conf/domain_conf.c | 4 ++++ src/conf/domain_conf.h | 1 + src/conf/schemas/domaincommon.rng | 5 +++++ src/cpu/cpu_x86.c | 4 +++- src/cpu/cpu_x86_data.h | 1 + src/qemu/qemu_command.c | 5 +++++ src/qemu/qemu_process.c | 1 + tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml | 1 + tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml | 1 + tests/domaincapsdata/qemu_8.0.0.x86_64.xml | 1 + tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml | 1 + tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml | 1 + tests/domaincapsdata/qemu_8.1.0.x86_64.xml | 1 + tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml | 1 + tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml | 1 + tests/domaincapsdata/qemu_8.2.0.x86_64.xml | 1 + tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml | 1 + tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml | 1 + tests/domaincapsdata/qemu_9.0.0.x86_64.xml | 1 + tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml | 1 + tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml | 1 + tests/domaincapsdata/qemu_9.1.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml | 1 + tests/qemuxmlconfdata/hyperv-off.x86_64-latest.xml | 1 + tests/qemuxmlconfdata/hyperv-off.xml | 1 + tests/qemuxmlconfdata/hyperv.x86_64-latest.args | 2 +- tests/qemuxmlconfdata/hyperv.x86_64-latest.xml | 1 + tests/qemuxmlconfdata/hyperv.xml | 1 + 33 files changed, 47 insertions(+), 2 deletions(-) diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst index 0cf3dc9deb..e38ff9ec4d 100644 --- a/docs/formatdomain.rst +++ b/docs/formatdomain.rst @@ -1990,6 +1990,7 @@ Hypervisors may allow certain CPU / machine features to be toggled on/off. <ipi state='on'/> <evmcs state='on'/> <emsr_bitmap state='on'/> + <xmm_input state='on'/> </hyperv> <kvm> <hidden state='on'/> @@ -2078,6 +2079,7 @@ are: evmcs Enable Enlightened VMCS on, off :since:`4.10.0 (QEMU 3.1)` avic Enable use Hyper-V SynIC with hardware APICv/AVIC on, off :since:`8.10.0 (QEMU 6.2)` emsr_bitmap Avoid unnecessary updates to L2 MSR Bitmap upon vmexits. on, off :since:`10.7.0 (QEMU 7.1)` + xmm_input Enable XMM Fast Hypercall Input on, off :since:`10.7.0 (QEMU 7.1)` =============== ====================================================================== ============================================ ======================================================= :since:`Since 8.0.0`, the hypervisor can be configured further by setting diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index c88e885d07..9647b89391 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -212,6 +212,7 @@ VIR_ENUM_IMPL(virDomainHyperv, "evmcs", "avic", "emsr_bitmap", + "xmm_input", ); VIR_ENUM_IMPL(virDomainKVM, @@ -16576,6 +16577,7 @@ virDomainFeaturesHyperVDefParse(virDomainDef *def, case VIR_DOMAIN_HYPERV_EVMCS: case VIR_DOMAIN_HYPERV_AVIC: case VIR_DOMAIN_HYPERV_EMSR_BITMAP: + case VIR_DOMAIN_HYPERV_XMM_INPUT: break; case VIR_DOMAIN_HYPERV_STIMER: @@ -21023,6 +21025,7 @@ virDomainDefFeaturesCheckABIStability(virDomainDef *src, case VIR_DOMAIN_HYPERV_EVMCS: case VIR_DOMAIN_HYPERV_AVIC: case VIR_DOMAIN_HYPERV_EMSR_BITMAP: + case VIR_DOMAIN_HYPERV_XMM_INPUT: if (src->hyperv_features[i] != dst->hyperv_features[i]) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("State of HyperV enlightenment feature '%1$s' differs: source: '%2$s', destination: '%3$s'"), @@ -27765,6 +27768,7 @@ virDomainDefFormatFeatures(virBuffer *buf, case VIR_DOMAIN_HYPERV_EVMCS: case VIR_DOMAIN_HYPERV_AVIC: case VIR_DOMAIN_HYPERV_EMSR_BITMAP: + case VIR_DOMAIN_HYPERV_XMM_INPUT: virBufferAddLit(&childBuf, "/>\n"); break; diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 332bcd0cf9..631edaf217 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -2204,6 +2204,7 @@ typedef enum { VIR_DOMAIN_HYPERV_EVMCS, VIR_DOMAIN_HYPERV_AVIC, VIR_DOMAIN_HYPERV_EMSR_BITMAP, + VIR_DOMAIN_HYPERV_XMM_INPUT, VIR_DOMAIN_HYPERV_LAST } virDomainHyperv; diff --git a/src/conf/schemas/domaincommon.rng b/src/conf/schemas/domaincommon.rng index 6f81fc94c2..e207c112be 100644 --- a/src/conf/schemas/domaincommon.rng +++ b/src/conf/schemas/domaincommon.rng @@ -7967,6 +7967,11 @@ <ref name="featurestate"/> </element> </optional> + <optional> + <element name="xmm_input"> + <ref name="featurestate"/> + </element> + </optional> </interleave> </group> </choice> diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c index 139ac48234..7cf158e25b 100644 --- a/src/cpu/cpu_x86.c +++ b/src/cpu/cpu_x86.c @@ -82,6 +82,8 @@ KVM_FEATURE_DEF(VIR_CPU_x86_HV_SYNIC, 0x40000003, 0x00000004, 0x0); KVM_FEATURE_DEF(VIR_CPU_x86_HV_STIMER, 0x40000003, 0x00000008, 0x0); +KVM_FEATURE_DEF(VIR_CPU_x86_HV_XMM_INPUT, + 0x40000003, 0x00000010, 0x0); KVM_FEATURE_DEF(VIR_CPU_x86_HV_RELAXED, 0x40000003, 0x00000020, 0x0); KVM_FEATURE_DEF(VIR_CPU_x86_HV_VAPIC, @@ -109,13 +111,13 @@ KVM_FEATURE_DEF(VIR_CPU_x86_HV_EVMCS, KVM_FEATURE_DEF(VIR_CPU_x86_HV_EMSR_BITMAP, 0x4000000A, 0x00080000, 0x0); - static virCPUx86Feature x86_kvm_features[] = { KVM_FEATURE(VIR_CPU_x86_KVM_PV_UNHALT), KVM_FEATURE(VIR_CPU_x86_HV_RUNTIME), KVM_FEATURE(VIR_CPU_x86_HV_SYNIC), KVM_FEATURE(VIR_CPU_x86_HV_STIMER), + KVM_FEATURE(VIR_CPU_x86_HV_XMM_INPUT), KVM_FEATURE(VIR_CPU_x86_HV_RELAXED), KVM_FEATURE(VIR_CPU_x86_HV_VAPIC), KVM_FEATURE(VIR_CPU_x86_HV_VPINDEX), diff --git a/src/cpu/cpu_x86_data.h b/src/cpu/cpu_x86_data.h index 414643fe8d..43ad2faeb1 100644 --- a/src/cpu/cpu_x86_data.h +++ b/src/cpu/cpu_x86_data.h @@ -51,6 +51,7 @@ struct _virCPUx86MSR { #define VIR_CPU_x86_HV_RUNTIME "hv-runtime" #define VIR_CPU_x86_HV_SYNIC "hv-synic" #define VIR_CPU_x86_HV_STIMER "hv-stimer" +#define VIR_CPU_x86_HV_XMM_INPUT "hv-xmm_input" #define VIR_CPU_x86_HV_RELAXED "hv-relaxed" #define VIR_CPU_x86_HV_SPINLOCKS "hv-spinlocks" #define VIR_CPU_x86_HV_VAPIC "hv-vapic" diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index cac6fc57a5..a0f2c0a946 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -6528,6 +6528,11 @@ qemuBuildCpuCommandLine(virCommand *cmd, virBufferAsprintf(&buf, ",%s=on", "hv-emsr-bitmap"); break; + case VIR_DOMAIN_HYPERV_XMM_INPUT: + if (def->hyperv_features[i] == VIR_TRISTATE_SWITCH_ON) + virBufferAsprintf(&buf, ",%s=on", "hv-xmm-input"); + break; + case VIR_DOMAIN_HYPERV_LAST: break; } diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 4a2e3b11fd..3de9ad6984 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -4305,6 +4305,7 @@ qemuProcessVerifyHypervFeatures(virDomainDef *def, case VIR_DOMAIN_HYPERV_EVMCS: case VIR_DOMAIN_HYPERV_AVIC: case VIR_DOMAIN_HYPERV_EMSR_BITMAP: + case VIR_DOMAIN_HYPERV_XMM_INPUT: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("host doesn't support hyperv '%1$s' feature"), virDomainHypervTypeToString(i)); diff --git a/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml index 1dfbf98248..aa7f0c877c 100644 --- a/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml @@ -286,6 +286,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml index 516eade95b..9892e2d657 100644 --- a/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml @@ -288,6 +288,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml index 96cfc5776e..9c9e8682e3 100644 --- a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml @@ -286,6 +286,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml index 5bb1299fb1..57f20132fa 100644 --- a/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml @@ -289,6 +289,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml index 743a6e728b..5dbe6e0b81 100644 --- a/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml @@ -290,6 +290,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml index fa635fd12b..4156a476cd 100644 --- a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml @@ -289,6 +289,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml index 6c394ba3c4..65987be79b 100644 --- a/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml @@ -291,6 +291,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml index 7ebd3ced3a..9ba857f660 100644 --- a/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml @@ -290,6 +290,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml index 1db706ef7e..01729e231e 100644 --- a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml @@ -291,6 +291,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml index 4fb0ebc45f..78b0e91171 100644 --- a/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml @@ -291,6 +291,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml index 43ff5c3d9f..88e2788cef 100644 --- a/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml @@ -292,6 +292,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_9.0.0.x86_64.xml b/tests/domaincapsdata/qemu_9.0.0.x86_64.xml index 86edbec0dd..37b12be0b7 100644 --- a/tests/domaincapsdata/qemu_9.0.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.0.0.x86_64.xml @@ -291,6 +291,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml index c9bf0139b5..08e4311c22 100644 --- a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml @@ -295,6 +295,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml index 288047b38b..72bd641b6e 100644 --- a/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml @@ -291,6 +291,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml index 4cae2f73cc..d074a260b6 100644 --- a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml @@ -295,6 +295,7 @@ <value>ipi</value> <value>avic</value> <value>emsr_bitmap</value> + <value>xmm_input</value> </enum> </hyperv> <launchSecurity supported='no'/> diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml index 2c9c2ebbbb..a59e18d5c8 100644 --- a/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_8.0.0_x86_64.xml @@ -3456,5 +3456,6 @@ <cap name='ipi'/> <cap name='avic'/> <cap name='emsr_bitmap'/> + <cap name='xmm_input'/> </hypervCapabilities> </qemuCaps> diff --git a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml index 6a87c1d9cc..d4d0751a96 100644 --- a/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_8.1.0_x86_64.xml @@ -3785,5 +3785,6 @@ <cap name='ipi'/> <cap name='avic'/> <cap name='emsr_bitmap'/> + <cap name='xmm_input'/> </hypervCapabilities> </qemuCaps> diff --git a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml index 6713905b2f..490270b8ca 100644 --- a/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_8.2.0_x86_64.xml @@ -3759,5 +3759,6 @@ <cap name='ipi'/> <cap name='avic'/> <cap name='emsr_bitmap'/> + <cap name='xmm_input'/> </hypervCapabilities> </qemuCaps> diff --git a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml index 520a2f95ee..52782de1b8 100644 --- a/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml @@ -3694,5 +3694,6 @@ <cap name='ipi'/> <cap name='avic'/> <cap name='emsr_bitmap'/> + <cap name='xmm_input'/> </hypervCapabilities> </qemuCaps> diff --git a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml index f5db55dc86..d0454924cf 100644 --- a/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml @@ -3950,5 +3950,6 @@ <cap name='ipi'/> <cap name='avic'/> <cap name='emsr_bitmap'/> + <cap name='xmm_input'/> </hypervCapabilities> </qemuCaps> diff --git a/tests/qemuxmlconfdata/hyperv-off.x86_64-latest.xml b/tests/qemuxmlconfdata/hyperv-off.x86_64-latest.xml index 2b5f3537a8..29f2da03f1 100644 --- a/tests/qemuxmlconfdata/hyperv-off.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/hyperv-off.x86_64-latest.xml @@ -26,6 +26,7 @@ <ipi state='off'/> <evmcs state='off'/> <emsr_bitmap state='off'/> + <xmm_input state='off'/> </hyperv> </features> <cpu mode='custom' match='exact' check='none'> diff --git a/tests/qemuxmlconfdata/hyperv-off.xml b/tests/qemuxmlconfdata/hyperv-off.xml index f760a9676b..bec8780eea 100644 --- a/tests/qemuxmlconfdata/hyperv-off.xml +++ b/tests/qemuxmlconfdata/hyperv-off.xml @@ -26,6 +26,7 @@ <ipi state='off'/> <evmcs state='off'/> <emsr_bitmap state='off'/> + <xmm_input state='off'/> </hyperv> </features> <clock offset='utc'/> diff --git a/tests/qemuxmlconfdata/hyperv.x86_64-latest.args b/tests/qemuxmlconfdata/hyperv.x86_64-latest.args index 5046ec6ea0..2aafafb340 100644 --- a/tests/qemuxmlconfdata/hyperv.x86_64-latest.args +++ b/tests/qemuxmlconfdata/hyperv.x86_64-latest.args @@ -12,7 +12,7 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/.config \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-QEMUGuest1/master-key.aes"}' \ -machine pc,usb=off,dump-guest-core=off,memory-backend=pc.ram,acpi=on \ -accel tcg \ --cpu 'qemu64,hv-relaxed=on,hv-vapic=on,hv-spinlocks=0x2fff,hv-vpindex=on,hv-runtime=on,hv-synic=on,hv-stimer=on,hv-reset=on,hv-vendor-id=KVM Hv,hv-frequencies=on,hv-reenlightenment=on,hv-tlbflush=on,hv-ipi=on,hv-evmcs=on,hv-avic=on,hv-emsr-bitmap=on' \ +-cpu 'qemu64,hv-relaxed=on,hv-vapic=on,hv-spinlocks=0x2fff,hv-vpindex=on,hv-runtime=on,hv-synic=on,hv-stimer=on,hv-reset=on,hv-vendor-id=KVM Hv,hv-frequencies=on,hv-reenlightenment=on,hv-tlbflush=on,hv-ipi=on,hv-evmcs=on,hv-avic=on,hv-emsr-bitmap=on,hv-xmm-input=on' \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/hyperv.x86_64-latest.xml b/tests/qemuxmlconfdata/hyperv.x86_64-latest.xml index d5cb27bf1d..36d9161fa8 100644 --- a/tests/qemuxmlconfdata/hyperv.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/hyperv.x86_64-latest.xml @@ -27,6 +27,7 @@ <evmcs state='on'/> <avic state='on'/> <emsr_bitmap state='on'/> + <xmm_input state='on'/> </hyperv> </features> <cpu mode='custom' match='exact' check='none'> diff --git a/tests/qemuxmlconfdata/hyperv.xml b/tests/qemuxmlconfdata/hyperv.xml index db520e2074..a1e3cbbdf8 100644 --- a/tests/qemuxmlconfdata/hyperv.xml +++ b/tests/qemuxmlconfdata/hyperv.xml @@ -27,6 +27,7 @@ <evmcs state='on'/> <avic state='on'/> <emsr_bitmap state='on'/> + <xmm_input state='on'/> </hyperv> </features> <clock offset='utc'/> -- 2.43.0