:p
atchew
Login
This brings libvirt in sync qith qemu commit 6f05a92ddc73ac8aa16cfd6188f907b30b0501e3. Tim Wiederhake (6): cpu_map: Add missing feature "mcdt-no" cpu_map: Add missing feature "sbdr-ssdp-no" cpu_map: Add missing feature "fbsdp-no" cpu_map: Add missing feature "psdp-no" cpu_map: Add missing feature "pbrsb-no" sync_qemu_models_i386.py: Add missing features src/cpu_map/sync_qemu_models_i386.py | 7 +++++++ src/cpu_map/x86_features.xml | 16 ++++++++++++++++ 2 files changed, 23 insertions(+) -- 2.39.2
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x07' ecx_in='0x01' edx='0x00004000'/> </feature> + <feature name='mcdt-no'> + <cpuid eax_in='0x07' ecx_in='0x02' edx='0x00000020'/> + </feature> + <!-- Processor Extended State Enumeration sub leaf 1 --> <feature name='xsaveopt'> <cpuid eax_in='0x0d' ecx_in='0x01' eax='0x00000001'/> -- 2.39.2
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='taa-no'> <msr index='0x10a' edx='0x00000000' eax='0x00000100'/> </feature> + <feature name='sbdr-ssdp-no'> + <msr index='0x10a' edx='0x00000000' eax='0x00002000'/> + </feature> <feature name='fb-clear'> <msr index='0x10a' edx='0x00000000' eax='0x00020000'/> </feature> -- 2.39.2
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='sbdr-ssdp-no'> <msr index='0x10a' edx='0x00000000' eax='0x00002000'/> </feature> + <feature name='fbsdp-no'> + <msr index='0x10a' edx='0x00000000' eax='0x00004000'/> + </feature> <feature name='fb-clear'> <msr index='0x10a' edx='0x00000000' eax='0x00020000'/> </feature> -- 2.39.2
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='fbsdp-no'> <msr index='0x10a' edx='0x00000000' eax='0x00004000'/> </feature> + <feature name='psdp-no'> + <msr index='0x10a' edx='0x00000000' eax='0x00008000'/> + </feature> <feature name='fb-clear'> <msr index='0x10a' edx='0x00000000' eax='0x00020000'/> </feature> -- 2.39.2
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='fb-clear'> <msr index='0x10a' edx='0x00000000' eax='0x00020000'/> </feature> + <feature name='pbrsb-no'> + <msr index='0x10a' edx='0x00000000' eax='0x01000000'/> + </feature> <!-- IA32_CORE_CAPABILITIES features --> <feature name='split-lock-detect'> -- 2.39.2
This brings the tool's list of features in sync with qemu commit 6f05a92ddc73ac8aa16cfd6188f907b30b0501e3. Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/sync_qemu_models_i386.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/cpu_map/sync_qemu_models_i386.py b/src/cpu_map/sync_qemu_models_i386.py index XXXXXXX..XXXXXXX 100755 --- a/src/cpu_map/sync_qemu_models_i386.py +++ b/src/cpu_map/sync_qemu_models_i386.py @@ -XXX,XX +XXX,XX @@ def translate_feature(name): "CPUID_7_0_EDX_SPEC_CTRL_SSBD": "ssbd", "CPUID_7_0_EDX_STIBP": "stibp", "CPUID_7_0_EDX_TSX_LDTRK": "tsx-ldtrk", + "CPUID_7_1_EAX_AMX_FP16": "amx-fp16", "CPUID_7_1_EAX_AVX512_BF16": "avx512-bf16", "CPUID_7_1_EAX_AVX_VNNI": "avx-vnni", "CPUID_7_1_EAX_FSRC": "fsrc", "CPUID_7_1_EAX_FSRS": "fsrs", "CPUID_7_1_EAX_FZRM": "fzrm", + "CPUID_7_1_EDX_PREFETCHITI": "prefetchiti", + "CPUID_7_2_EDX_MCDT_NO": "mcdt-no", "CPUID_8000_0008_EBX_AMD_PSFD": "amd-psfd", "CPUID_8000_0008_EBX_AMD_SSBD": "amd-ssbd", "CPUID_8000_0008_EBX_CLZERO": "clzero", @@ -XXX,XX +XXX,XX @@ def translate_feature(name): "CPUID_XSAVE_XSAVEC": "xsavec", "CPUID_XSAVE_XSAVEOPT": "xsaveopt", "CPUID_XSAVE_XSAVES": "xsaves", + "MSR_ARCH_CAP_FBSDP_NO": "fbsdp-no", "MSR_ARCH_CAP_IBRS_ALL": "ibrs-all", "MSR_ARCH_CAP_MDS_NO": "mds-no", + "MSR_ARCH_CAP_PBRSB_NO": "pbrsb-no", "MSR_ARCH_CAP_PSCHANGE_MC_NO": "pschange-mc-no", + "MSR_ARCH_CAP_PSDP_NO": "psdp-no", "MSR_ARCH_CAP_RDCL_NO": "rdctl-no", + "MSR_ARCH_CAP_SBDR_SSDP_NO": "sbdr-ssdp-no", "MSR_ARCH_CAP_SKIP_L1DFL_VMENTRY": "skip-l1dfl-vmentry", "MSR_ARCH_CAP_TAA_NO": "taa-no", "MSR_CORE_CAP_SPLIT_LOCK_DETECT": "split-lock-detect", -- 2.39.2
This brings libvirt in sync qith qemu commit 02d9c38236cf8c9826e5c5be61780c4444cb4ae0. Tim Wiederhake (10): cpu_map: Add missing feature "fred" cpu_map: Add missing feature "lkgs" cpu_map: Add missing feature "wrmsrns" cpu_map: Add missing feature "lam" cpu_map: Add missing feature "overflow-recov" cpu_map: Add missing feature "succor" cpu_map: Add missing feature "rfds-no" cpu_map: Add missing feature "rfds-clear" cpu_map: Add missing feature "vmx-nested-exception" cpu_map: Ignore feature "kvm-asyncpf-vmexit" src/cpu_map/sync_qemu_features_i386.py | 1 + src/cpu_map/x86_features.xml | 29 +++++++++++++++++++ ...86_64-cpuid-EPYC-7502-32-Core-disabled.xml | 2 +- .../x86_64-cpuid-EPYC-7502-32-Core-guest.xml | 2 ++ .../x86_64-cpuid-EPYC-7502-32-Core-host.xml | 2 ++ ...86_64-cpuid-EPYC-7601-32-Core-disabled.xml | 2 +- .../x86_64-cpuid-EPYC-7601-32-Core-guest.xml | 2 ++ .../x86_64-cpuid-EPYC-7601-32-Core-host.xml | 2 ++ ...-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml | 2 +- ..._64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml | 2 ++ ...6_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml | 2 ++ ...-cpuid-Hygon-C86-7185-32-core-disabled.xml | 2 +- ..._64-cpuid-Hygon-C86-7185-32-core-guest.xml | 2 ++ ...6_64-cpuid-Hygon-C86-7185-32-core-host.xml | 2 ++ ...puid-Ryzen-7-1800X-Eight-Core-disabled.xml | 2 +- ...4-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml | 2 ++ ...64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml | 2 ++ ...4-cpuid-Ryzen-9-3900X-12-Core-disabled.xml | 2 +- ...6_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml | 2 ++ ...86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml | 2 ++ .../domaincapsdata/qemu_9.1.0-q35.x86_64.xml | 3 ++ tests/domaincapsdata/qemu_9.1.0.x86_64.xml | 3 ++ ...host-model-fallback-kvm.x86_64-latest.args | 2 +- ...cpu-host-model-features.x86_64-latest.args | 2 +- .../cpu-host-model-kvm.x86_64-latest.args | 2 +- ...st-model-nofallback-kvm.x86_64-latest.args | 2 +- 26 files changed, 70 insertions(+), 10 deletions(-) -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='fsrc'> <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00001000'/> </feature> + <feature name='fred'> + <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00020000'/> + </feature> <feature name='amx-fp16'> <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00200000'/> </feature> -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='fred'> <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00020000'/> </feature> + <feature name='lkgs'> + <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00040000'/> + </feature> <feature name='amx-fp16'> <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00200000'/> </feature> -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='lkgs'> <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00040000'/> </feature> + <feature name='wrmsrns'> + <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00080000'/> + </feature> <feature name='amx-fp16'> <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00200000'/> </feature> -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='avx-ifma'> <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x00800000'/> </feature> + <feature name='lam'> + <cpuid eax_in='0x00000007' ecx_in='0x00000001' eax='0x04000000'/> + </feature> <!-- cpuid level 0x00000007, 0x0001 (edx) --> <feature name='avx-vnni-int8'> -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 5 +++++ .../cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml | 2 +- tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml | 1 + tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml | 1 + .../cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml | 2 +- tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml | 1 + tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml | 1 + .../x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml | 2 +- .../x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml | 1 + .../cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml | 1 + .../x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml | 2 +- .../x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml | 1 + .../cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml | 1 + .../x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml | 2 +- .../x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml | 1 + .../x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml | 1 + .../x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml | 2 +- .../cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml | 1 + .../cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml | 1 + tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml | 1 + tests/domaincapsdata/qemu_9.1.0.x86_64.xml | 1 + .../cpu-host-model-fallback-kvm.x86_64-latest.args | 2 +- .../cpu-host-model-features.x86_64-latest.args | 2 +- tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args | 2 +- .../cpu-host-model-nofallback-kvm.x86_64-latest.args | 2 +- 25 files changed, 29 insertions(+), 10 deletions(-) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x80000001' edx='0x80000000'/> </feature> + <!-- cpuid level 0x80000007 (ebx) --> + <feature name='overflow-recov'> + <cpuid eax_in='0x80000007' ebx='0x00000001'/> + </feature> + <!-- cpuid level 0x80000007 (edx) --> <feature name='invtsc' migratable='no'> <cpuid eax_in='0x80000007' edx='0x00000100'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x00001000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000006'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01423408' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00004000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='tce'/> <feature policy='require' name='topoext'/> <feature policy='require' name='perfctr_nb'/> + <feature policy='require' name='overflow-recov'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='ibrs'/> <feature policy='require' name='amd-ssbd'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='tce'/> <feature name='topoext'/> <feature name='perfctr_nb'/> + <feature name='overflow-recov'/> <feature name='invtsc'/> <feature name='ibrs'/> <feature name='amd-ssbd'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x08000008' edx='0x10000000'/> <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='topoext'/> <feature policy='require' name='perfctr_core'/> <feature policy='require' name='perfctr_nb'/> + <feature policy='require' name='overflow-recov'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='clzero'/> <feature policy='require' name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='topoext'/> <feature name='perfctr_core'/> <feature name='perfctr_nb'/> + <feature name='overflow-recov'/> <feature name='invtsc'/> <feature name='clzero'/> <feature name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x08000008' edx='0x10000000'/> <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x08000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='topoext'/> <feature policy='require' name='perfctr_core'/> <feature policy='require' name='perfctr_nb'/> + <feature policy='require' name='overflow-recov'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='clzero'/> <feature policy='require' name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='topoext'/> <feature name='perfctr_core'/> <feature name='perfctr_nb'/> + <feature name='overflow-recov'/> <feature name='invtsc'/> <feature name='clzero'/> <feature name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x08000008' edx='0x10000000'/> <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='topoext'/> <feature policy='require' name='perfctr_core'/> <feature policy='require' name='perfctr_nb'/> + <feature policy='require' name='overflow-recov'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='clzero'/> <feature policy='require' name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='topoext'/> <feature name='perfctr_core'/> <feature name='perfctr_nb'/> + <feature name='overflow-recov'/> <feature name='invtsc'/> <feature name='clzero'/> <feature name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x20000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c23008' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='topoext'/> <feature policy='require' name='perfctr_core'/> <feature policy='require' name='perfctr_nb'/> + <feature policy='require' name='overflow-recov'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='clzero'/> <feature policy='require' name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='topoext'/> <feature name='perfctr_core'/> <feature name='perfctr_nb'/> + <feature name='overflow-recov'/> <feature name='invtsc'/> <feature name='clzero'/> <feature name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x00001000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000006'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01423408' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00008000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='tce'/> <feature policy='require' name='topoext'/> <feature policy='require' name='perfctr_nb'/> + <feature policy='require' name='overflow-recov'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='amd-ssbd'/> <feature policy='require' name='lbrv'/> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='tce'/> <feature name='topoext'/> <feature name='perfctr_nb'/> + <feature name='overflow-recov'/> <feature name='invtsc'/> <feature name='amd-ssbd'/> <feature name='lbrv'/> 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 XXXXXXX..XXXXXXX 100644 --- a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='arch-capabilities'/> <feature policy='require' name='ssbd'/> <feature policy='require' name='cmp_legacy'/> + <feature policy='require' name='overflow-recov'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='amd-ssbd'/> <feature policy='require' name='virt-ssbd'/> diff --git a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='arch-capabilities'/> <feature policy='require' name='ssbd'/> <feature policy='require' name='cmp_legacy'/> + <feature policy='require' name='overflow-recov'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='amd-ssbd'/> <feature policy='require' name='virt-ssbd'/> diff --git a/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off,abm=on,ds=on,invtsc=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off,abm=on,ds=on,invtsc=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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 q35,usb=off,dump-guest-core=off,memory-backend=pc.ram,acpi=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml | 2 +- tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml | 1 + tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml | 1 + tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml | 2 +- tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml | 1 + tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml | 1 + .../x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml | 2 +- .../cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml | 1 + tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml | 1 + .../x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml | 2 +- .../cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml | 1 + tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml | 1 + .../x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml | 2 +- .../x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml | 1 + .../cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml | 1 + .../x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml | 2 +- tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml | 1 + tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml | 1 + tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml | 1 + tests/domaincapsdata/qemu_9.1.0.x86_64.xml | 1 + .../cpu-host-model-fallback-kvm.x86_64-latest.args | 2 +- .../qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args | 2 +- tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args | 2 +- .../cpu-host-model-nofallback-kvm.x86_64-latest.args | 2 +- 25 files changed, 27 insertions(+), 10 deletions(-) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='overflow-recov'> <cpuid eax_in='0x80000007' ebx='0x00000001'/> </feature> + <feature name='succor'> + <cpuid eax_in='0x80000007' ebx='0x00000002'/> + </feature> <!-- cpuid level 0x80000007 (edx) --> <feature name='invtsc' migratable='no'> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x00001000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000006'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01423408' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000003' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00004000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='topoext'/> <feature policy='require' name='perfctr_nb'/> <feature policy='require' name='overflow-recov'/> + <feature policy='require' name='succor'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='ibrs'/> <feature policy='require' name='amd-ssbd'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='topoext'/> <feature name='perfctr_nb'/> <feature name='overflow-recov'/> + <feature name='succor'/> <feature name='invtsc'/> <feature name='ibrs'/> <feature name='amd-ssbd'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x08000008' edx='0x10000000'/> <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000003' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='perfctr_core'/> <feature policy='require' name='perfctr_nb'/> <feature policy='require' name='overflow-recov'/> + <feature policy='require' name='succor'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='clzero'/> <feature policy='require' name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='perfctr_core'/> <feature name='perfctr_nb'/> <feature name='overflow-recov'/> + <feature name='succor'/> <feature name='invtsc'/> <feature name='clzero'/> <feature name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x08000008' edx='0x10000000'/> <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x08000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000003' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='perfctr_core'/> <feature policy='require' name='perfctr_nb'/> <feature policy='require' name='overflow-recov'/> + <feature policy='require' name='succor'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='clzero'/> <feature policy='require' name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml +++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='perfctr_core'/> <feature name='perfctr_nb'/> <feature name='overflow-recov'/> + <feature name='succor'/> <feature name='invtsc'/> <feature name='clzero'/> <feature name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x08000008' edx='0x10000000'/> <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000003' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='perfctr_core'/> <feature policy='require' name='perfctr_nb'/> <feature policy='require' name='overflow-recov'/> + <feature policy='require' name='succor'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='clzero'/> <feature policy='require' name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='perfctr_core'/> <feature name='perfctr_nb'/> <feature name='overflow-recov'/> + <feature name='succor'/> <feature name='invtsc'/> <feature name='clzero'/> <feature name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x20000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000008' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c23008' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000003' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='perfctr_core'/> <feature policy='require' name='perfctr_nb'/> <feature policy='require' name='overflow-recov'/> + <feature policy='require' name='succor'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='clzero'/> <feature policy='require' name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='perfctr_core'/> <feature name='perfctr_nb'/> <feature name='overflow-recov'/> + <feature name='succor'/> <feature name='invtsc'/> <feature name='clzero'/> <feature name='xsaveerptr'/> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml @@ -XXX,XX +XXX,XX @@ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x00001000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000006'/> <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01423408' edx='0x00000000'/> - <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000001' ecx='0x00000000' edx='0x00000100'/> + <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000003' ecx='0x00000000' edx='0x00000100'/> <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00008000' ecx='0x00000000' edx='0x00000000'/> <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0001b4f6'/> </cpudata> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='topoext'/> <feature policy='require' name='perfctr_nb'/> <feature policy='require' name='overflow-recov'/> + <feature policy='require' name='succor'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='amd-ssbd'/> <feature policy='require' name='lbrv'/> diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml +++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml @@ -XXX,XX +XXX,XX @@ <feature name='topoext'/> <feature name='perfctr_nb'/> <feature name='overflow-recov'/> + <feature name='succor'/> <feature name='invtsc'/> <feature name='amd-ssbd'/> <feature name='lbrv'/> 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 XXXXXXX..XXXXXXX 100644 --- a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='ssbd'/> <feature policy='require' name='cmp_legacy'/> <feature policy='require' name='overflow-recov'/> + <feature policy='require' name='succor'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='amd-ssbd'/> <feature policy='require' name='virt-ssbd'/> diff --git a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='ssbd'/> <feature policy='require' name='cmp_legacy'/> <feature policy='require' name='overflow-recov'/> + <feature policy='require' name='succor'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='amd-ssbd'/> <feature policy='require' name='virt-ssbd'/> diff --git a/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off,abm=on,ds=on,invtsc=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off,abm=on,ds=on,invtsc=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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 q35,usb=off,dump-guest-core=off,memory-backend=pc.ram,acpi=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml | 1 + tests/domaincapsdata/qemu_9.1.0.x86_64.xml | 1 + .../cpu-host-model-fallback-kvm.x86_64-latest.args | 2 +- .../qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args | 2 +- tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args | 2 +- .../cpu-host-model-nofallback-kvm.x86_64-latest.args | 2 +- 7 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='gds-no'> <msr index='0x0000010a' edx='0x00000000' eax='0x04000000'/> </feature> + <feature name='rfds-no'> + <msr index='0x0000010a' edx='0x00000000' eax='0x08000000'/> + </feature> <!-- msr 0x00000480 --> <feature name='vmx-ins-outs'> 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 XXXXXXX..XXXXXXX 100644 --- a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='mds-no'/> <feature policy='require' name='pschange-mc-no'/> <feature policy='require' name='gds-no'/> + <feature policy='require' name='rfds-no'/> <feature policy='disable' name='xsaves'/> </mode> <mode name='custom' supported='yes'> diff --git a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml index XXXXXXX..XXXXXXX 100644 --- a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml @@ -XXX,XX +XXX,XX @@ <feature policy='require' name='mds-no'/> <feature policy='require' name='pschange-mc-no'/> <feature policy='require' name='gds-no'/> + <feature policy='require' name='rfds-no'/> <feature policy='disable' name='xsaves'/> </mode> <mode name='custom' supported='yes'> diff --git a/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,rfds-no=on,xsaves=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-features.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off,abm=on,ds=on,invtsc=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,rfds-no=on,xsaves=off,abm=on,ds=on,invtsc=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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 q35,usb=off,dump-guest-core=off,memory-backend=pc.ram,acpi=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,rfds-no=on,xsaves=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ diff --git a/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args b/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args index XXXXXXX..XXXXXXX 100644 --- a/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args +++ b/tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-latest.args @@ -XXX,XX +XXX,XX @@ 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=off \ -accel kvm \ --cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,xsaves=off \ +-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,overflow-recov=on,succor=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,rfds-no=on,xsaves=off \ -m size=219136k \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \ -overcommit mem-lock=off \ -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='rfds-no'> <msr index='0x0000010a' edx='0x00000000' eax='0x08000000'/> </feature> + <feature name='rfds-clear'> + <msr index='0x0000010a' edx='0x00000000' eax='0x10000000'/> + </feature> <!-- msr 0x00000480 --> <feature name='vmx-ins-outs'> -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/x86_features.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml index XXXXXXX..XXXXXXX 100644 --- a/src/cpu_map/x86_features.xml +++ b/src/cpu_map/x86_features.xml @@ -XXX,XX +XXX,XX @@ <feature name='vmx-any-errcode'> <msr index='0x00000480' edx='0x01000000' eax='0x00000000'/> </feature> + <feature name='vmx-nested-exception'> + <msr index='0x00000480' edx='0x04000000' eax='0x00000000'/> + </feature> <!-- msr 0x00000485 --> <feature name='vmx-store-lma'> -- 2.43.0
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- src/cpu_map/sync_qemu_features_i386.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/cpu_map/sync_qemu_features_i386.py b/src/cpu_map/sync_qemu_features_i386.py index XXXXXXX..XXXXXXX 100755 --- a/src/cpu_map/sync_qemu_features_i386.py +++ b/src/cpu_map/sync_qemu_features_i386.py @@ -XXX,XX +XXX,XX @@ import re FEATURES_IGNORE = ( "kvm-asyncpf", "kvm-asyncpf-int", + "kvm-asyncpf-vmexit", "kvm-hint-dedicated", "kvm-mmu", "kvm-msi-ext-dest-id", -- 2.43.0