Messages in this thread | | | From | Jiaxi Chen <> | Subject | [PATCH v4 0/6] x86: KVM: Advertise CPUID of new Intel platform instructions to user space | Date | Fri, 18 Nov 2022 22:15:03 +0800 |
| |
Latest Intel platform Granite Rapids/Sierra Forest has introduced below new instructions and CPUIDs:
- CMPccXADD CPUID.(EAX=7,ECX=1):EAX[bit 7] - AMX-FP16 CPUID.(EAX=7,ECX=1):EAX[bit 21] - AVX-IFMA CPUID.(EAX=7,ECX=1):EAX[bit 23] - AVX-VNNI-INT8 CPUID.(EAX=7,ECX=1):EDX[bit 4] - AVX-NE-CONVERT CPUID.(EAX=7,ECX=1):EDX[bit 5] - PREFETCHITI CPUID.(EAX=7,ECX=1):EDX[bit 14]
Details can be found in recent Intel ISE (Instruction Set Extensions)[1].
This patch series advertises KVM support of these CPUIDs to host userspace.
[1] Intel ISE: https://cdrdv2.intel.com/v1/dl/getContent/671368
v4: - Put CPUID_7_1_EAX back to cpuid_leaf[], considering more bits will be defined in the future for this leaf.
v3: https://lore.kernel.org/lkml/20221110015252.202566-1-jiaxi.chen@linux.intel.com/ - Remain CPUID_8000_001F_EAX in the last leaf of cpuid_leaf[] - Replace CPUID_7_1_EAX with CPUID_LNX_5, waiting for future new CPUIDs
v2: https://lore.kernel.org/all/20221103025030.78371-1-jiaxi.chen@linux.intel.com/ - Remove vague descriptions in the changelogs, including pronouns and "this patch" kind of things. - Move the two CPUIDs of cpuid_leaf[12] CPUID_7_1_EAX to kvm-only subleaves. - Replace cpuid_leaf[12] CPUID_7_1_EAX with the last leaf CPUID_8000_001F_EAX to shorten array length. - Change the newly-added CPUID leaf [CPUID_7_1_EDX] in v1 into kvm-only subleaves.
v1: https://lore.kernel.org/all/20221019084734.3590760-1-jiaxi.chen@linux.intel.com/
Chang S. Bae (1): x86: KVM: Advertise AMX-FP16 CPUID to user space
Jiaxi Chen (5): x86: KVM: Advertise CMPccXADD CPUID to user space x86: KVM: Advertise AVX-IFMA CPUID to user space x86: KVM: Advertise AVX-VNNI-INT8 CPUID to user space x86: KVM: Advertise AVX-NE-CONVERT CPUID to user space x86: KVM: Advertise PREFETCHIT0/1 CPUID to user space
arch/x86/include/asm/cpufeatures.h | 3 +++ arch/x86/kvm/cpuid.c | 8 ++++++-- arch/x86/kvm/reverse_cpuid.h | 7 +++++++ 3 files changed, 16 insertions(+), 2 deletions(-)
base-commit: f0c4d9fc9cc9462659728d168387191387e903cc -- 2.27.0
| |