[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 3/5] target/i386: Add support for CPUID_8000_
From: |
Radim Krčmář |
Subject: |
Re: [Qemu-devel] [PATCH v2 3/5] target/i386: Add support for CPUID_8000_001E for AMD |
Date: |
Wed, 28 Feb 2018 19:24:21 +0100 |
2018-02-23 21:30-0500, Babu Moger:
> From: Stanislav Lanci <address@hidden>
>
> Populate threads/core_id/apic_ids/socket_id when CPUID_EXT3_TOPOEXT
> feature is supported. This is required to support hyperthreading
> feature on AMD CPUS. These are supported via CPUID_8000_001E extended
> functions.
>
> Signed-off-by: Stanislav Lanci <address@hidden>
> Signed-off-by: Babu Moger <address@hidden>
> ---
> target/i386/cpu.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/target/i386/cpu.c b/target/i386/cpu.c
> index a5a480e..191e850 100644
> --- a/target/i386/cpu.c
> +++ b/target/i386/cpu.c
> @@ -3666,6 +3666,14 @@ void cpu_x86_cpuid(CPUX86State *env, uint32_t index,
> uint32_t count,
> *edx = 0;
> }
> break;
> + case 0x8000001E:
> + if (env->features[FEAT_8000_0001_ECX] & CPUID_EXT3_TOPOEXT) {
> + *eax = cpu->apic_id;
> + *ebx = (cs->nr_threads - 1) << 8 | cpu->core_id;
Do we somewhere assert that AMD cannot have cpu->core_id > 255?
(qemu does allow weird configurations.)
Thanks.
> + *ecx = cpu->socket_id;
> + *edx = 0;
> + }
> + break;
> case 0xC0000000:
> *eax = env->cpuid_xlevel2;
> *ebx = 0;
> --
> 1.8.3.1
>
- [Qemu-devel] [PATCH v2 0/5] Enable TOPOEXT to support hyperthreading on AMD CPU, Babu Moger, 2018/02/23
- [Qemu-devel] [PATCH v2 3/5] target/i386: Add support for CPUID_8000_001E for AMD, Babu Moger, 2018/02/23
- Re: [Qemu-devel] [PATCH v2 3/5] target/i386: Add support for CPUID_8000_001E for AMD,
Radim Krčmář <=
- [Qemu-devel] [PATCH v2 2/5] target/i386: Populate AMD Processor Cache Information, Babu Moger, 2018/02/23
- [Qemu-devel] [PATCH v2 5/5] target/i386: Remove generic SMT thread check, Babu Moger, 2018/02/23
- [Qemu-devel] [PATCH v2 4/5] target/i386: Enable TOPOEXT feature on AMD EPYC CPU, Babu Moger, 2018/02/23