[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPY
From: |
Eduardo Habkost |
Subject: |
Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU |
Date: |
Mon, 11 Jun 2018 17:50:30 -0300 |
User-agent: |
Mutt/1.9.2 (2017-12-15) |
On Fri, Jun 08, 2018 at 06:56:19PM -0400, Babu Moger wrote:
> Enable TOPOEXT feature on EPYC CPU. This is required to support
> hyperthreading on VM guests. Also extend xlevel to 0x8000001E.
>
> TOPOEXT feature is disabled for legacy machines.
>
> Signed-off-by: Babu Moger <address@hidden>
> ---
> target/i386/cpu.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/target/i386/cpu.c b/target/i386/cpu.c
> index d3411ed..4dd9a82 100644
> --- a/target/i386/cpu.c
> +++ b/target/i386/cpu.c
> @@ -2574,6 +2574,7 @@ static X86CPUDefinition builtin_x86_defs[] = {
> .xlevel = 0x8000000A,
> .model_id = "AMD EPYC Processor",
> .cache_info = &epyc_cache_info,
> + .auto_topoext = 1,
> },
> {
> .name = "EPYC-IBPB",
> @@ -2621,6 +2622,7 @@ static X86CPUDefinition builtin_x86_defs[] = {
> .xlevel = 0x8000000A,
> .model_id = "AMD EPYC Processor (with IBPB)",
> .cache_info = &epyc_cache_info,
> + .auto_topoext = 1,
> },
> };
>
> @@ -4672,6 +4674,11 @@ static void x86_cpu_expand_features(X86CPU *cpu, Error
> **errp)
> x86_cpu_adjust_level(cpu, &env->cpuid_min_xlevel, 0x8000000A);
> }
>
> + /* TOPOEXT feature requires 0x8000001E */
> + if (env->features[FEAT_8000_0001_ECX] & CPUID_EXT3_TOPOEXT) {
> + x86_cpu_adjust_level(cpu, &env->cpuid_min_xlevel, 0x8000001E);
> + }
I suggest moving this hunk to a separate patch. I'm not 100%
sure yet if this will require compat_props code to disable
auto-xlevel-increase on older machine-types.
--
Eduardo
- [Qemu-devel] [PATCH v13 2/5] i386: Introduce auto_topoext bit to manage topoext, (continued)
- [Qemu-devel] [PATCH v13 2/5] i386: Introduce auto_topoext bit to manage topoext, Babu Moger, 2018/06/08
- Re: [Qemu-devel] [PATCH v13 2/5] i386: Introduce auto_topoext bit to manage topoext, Moger, Babu, 2018/06/11
- Re: [Qemu-devel] [PATCH v13 2/5] i386: Introduce auto_topoext bit to manage topoext, Eduardo Habkost, 2018/06/11
- Re: [Qemu-devel] [PATCH v13 2/5] i386: Introduce auto_topoext bit to manage topoext, Moger, Babu, 2018/06/11
- Re: [Qemu-devel] [PATCH v13 2/5] i386: Introduce auto_topoext bit to manage topoext, Eduardo Habkost, 2018/06/11
- Re: [Qemu-devel] [PATCH v13 2/5] i386: Introduce auto_topoext bit to manage topoext, Moger, Babu, 2018/06/11
[Qemu-devel] [PATCH v13 1/5] i386: Add support for CPUID_8000_001E for AMD, Babu Moger, 2018/06/08
[Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Babu Moger, 2018/06/08
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU,
Eduardo Habkost <=
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Moger, Babu, 2018/06/11
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Eduardo Habkost, 2018/06/11
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Moger, Babu, 2018/06/12
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Eduardo Habkost, 2018/06/12
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Moger, Babu, 2018/06/12
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Eduardo Habkost, 2018/06/12
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Babu Moger, 2018/06/12
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Moger, Babu, 2018/06/13
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Eduardo Habkost, 2018/06/13
- Re: [Qemu-devel] [PATCH v13 3/5] i386: Enable TOPOEXT feature on AMD EPYC CPU, Moger, Babu, 2018/06/13