git: e6eba5076929 - main - vmm: Add missing AVX instructions for AVX512 in cpuid stdext
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 30 Mar 2026 07:20:00 UTC
The branch main has been updated by aokblast:
URL: https://cgit.FreeBSD.org/src/commit/?id=e6eba5076929d0b193c9c94b2658c7e8f5da0669
commit e6eba5076929d0b193c9c94b2658c7e8f5da0669
Author: ShengYi Hung <aokblast@FreeBSD.org>
AuthorDate: 2026-03-22 02:26:56 +0000
Commit: ShengYi Hung <aokblast@FreeBSD.org>
CommitDate: 2026-03-30 07:19:44 +0000
vmm: Add missing AVX instructions for AVX512 in cpuid stdext
Reported by: Tom <freebsd@fizz.buzz>
Reviewed by: markj
Tested by: Tom <freebsd@fizz.buzz>
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D56021
---
sys/amd64/vmm/x86.c | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/sys/amd64/vmm/x86.c b/sys/amd64/vmm/x86.c
index 6794110f067a..4ac008499999 100644
--- a/sys/amd64/vmm/x86.c
+++ b/sys/amd64/vmm/x86.c
@@ -446,10 +446,19 @@ x86_emulate_cpuid(struct vcpu *vcpu, uint64_t *rax, uint64_t *rbx,
CPUID_STDEXT_AVX512ER |
CPUID_STDEXT_AVX512CD | CPUID_STDEXT_SHA |
CPUID_STDEXT_AVX512BW |
- CPUID_STDEXT_AVX512VL;
+ CPUID_STDEXT_AVX512VL |
+ CPUID_STDEXT_AVX512IFMA;
regs[2] &= CPUID_STDEXT2_VAES |
- CPUID_STDEXT2_VPCLMULQDQ;
- regs[3] &= CPUID_STDEXT3_MD_CLEAR;
+ CPUID_STDEXT2_VPCLMULQDQ |
+ CPUID_STDEXT2_AVX512VBMI |
+ CPUID_STDEXT2_AVX512VBMI2 |
+ CPUID_STDEXT2_AVX512VNNI |
+ CPUID_STDEXT2_AVX512BITALG |
+ CPUID_STDEXT2_AVX512VPOPCNTDQ;
+ regs[3] &= CPUID_STDEXT3_MD_CLEAR |
+ CPUID_STDEXT3_AVX5124VNNIW |
+ CPUID_STDEXT3_AVX5124FMAPS |
+ CPUID_STDEXT3_AVX512VP2INTERSECT;
/* Advertise RDPID if it is enabled. */
error = vm_get_capability(vcpu, VM_CAP_RDPID,