These series enable TOPOEXT feature on AMD CPU. These are required to support hyperthreading on kvm guests. Addresses the issues reported by these bugs https://bugzilla.redhat.com/show_bug.cgi?id=1481253 https://bugs.launchpad.net/qemu/+bug/1703506 v2: Fixed few more minor issues per Gary Hooks comments. Thank you Gary. Removed the patch#1. We need to handle the instruction cache associativity seperately. It varies based on the cpu family. I will comeback to that later. Added two more typo corrections in patch#1 and patch#5. v1: Stanislav Lanci posted few patches earlier. https://patchwork.kernel.org/patch/10040903/ Rebased his patches with few changes. 1. Spit the patches into two, separating cpuid functions 0x8000001D and 0x8000001E (Patch 2 and 3). 2. Removed the generic non-intel check and made a separate patch with some changes(Patch 5). 3. Fixed L3_N_SETS_AMD(from 4096 to 8192) based on CPUID_Fn8000001D_ECX_x03. Added 2 more patches. Patch 1. Fixes cache associativity. Patch 4. Adds TOPOEXT feature on AMD EPYC CPU. Babu Moger (3): target/i386: Fix a minor typo found while reviwing target/i386: Enable TOPOEXT feature on AMD EPYC CPU target/i386: Remove generic SMT thread check Stanislav Lanci (2): target/i386: Populate AMD Processor Cache Information target/i386: Add support for CPUID_8000_001E for AMD linux-headers/asm-x86/kvm.h | 2 +- target/i386/cpu.c | 104 ++++++++++++++++++++++++++++++++++++++++---- target/i386/kvm.c | 31 +++++++++++-- 3 files changed, 124 insertions(+), 13 deletions(-) -- 1.8.3.1