linux/arch/x86
Nikunj A Dadhania de0bfdc713 KVM: x86: Advertise AVX512 Bit Matrix Multiply (BMM) to userspace
Advertise AVX512 Bit Matrix Multiply (BMM) and Bit Reversal instructions to
userspace via CPUID leaf 0x80000021_EAX[23]. This feature enables bit
matrix multiply operations and bit reversal.  Like most AVX instructions,
there are no intercept controls for individual instructions, and no extra
work is needed in KVM to enable correct execution of the instructions in
the guest.

The instructions and CPUID feature are first described in:

  AMD64 Bit Matrix Multiply and Bit Reversal Instructions
  Publication #69192 Revision: 1.00
  Issue Date: January 2026

While at it, reorder PREFETCHI in KVM's initialization sequence to match
the CPUID bit position order for better organization.

Signed-off-by: Nikunj A Dadhania <nikunj@amd.com>
Link: https://patch.msgid.link/20260210053511.1612505-1-nikunj@amd.com
[sean: massage changelog]
Signed-off-by: Sean Christopherson <seanjc@google.com>
2026-03-12 10:56:36 -07:00
..
boot mm.git review status for linus..mm-stable 2026-02-12 11:32:37 -08:00
coco Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
configs x86/xen: select HIBERNATE_CALLBACKS more directly 2025-09-08 20:10:20 +02:00
crypto crypto: x86/aes-gcm - Use new AES library API 2026-01-15 14:09:08 -08:00
entry x86/fred: Correct speculative safety in fred_extint() 2026-02-23 11:19:11 +01:00
events perf/x86/intel/uncore: Add per-scheduler IMC CAS count events 2026-02-23 11:19:25 +01:00
hyperv Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
ia32
include KVM: x86: Advertise AVX512 Bit Matrix Multiply (BMM) to userspace 2026-03-12 10:56:36 -07:00
kernel x86/cfi: Fix CFI rewrite for odd alignments 2026-02-23 11:19:11 +01:00
kvm KVM: x86: Advertise AVX512 Bit Matrix Multiply (BMM) to userspace 2026-03-12 10:56:36 -07:00
lib mm.git review status for linus..mm-stable 2026-02-12 11:32:37 -08:00
math-emu x86/math-emu: Fix div_Xsig() prototype 2025-11-09 21:01:08 +01:00
mm x86/bug: Handle __WARN_printf() trap in early_fixup_exception() 2026-02-23 11:19:11 +01:00
net x86/cfi: Fix CFI rewrite for odd alignments 2026-02-23 11:19:11 +01:00
pci Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
platform Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
power Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
purgatory kcfi: Rename CONFIG_CFI_CLANG to CONFIG_CFI 2025-09-24 14:29:14 -07:00
ras
realmode
tools x86/entry/vdso: Add vdso2c to .gitignore 2026-01-27 23:27:51 +01:00
um arch: um/x86: Select ARCH_SUPPORTS_ATOMIC_RMW for UML_X86 2026-01-09 19:01:41 +08:00
video sysfb: Replace screen_info with sysfb_primary_display 2025-12-16 14:12:44 +01:00
virt Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
xen Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
.gitignore
Kbuild x86/kbuild: Incorporate boot/startup/ via Kbuild makefile 2025-09-03 17:59:59 +02:00
Kconfig mm.git review status for linus..mm-stable 2026-02-12 11:32:37 -08:00
Kconfig.assembler
Kconfig.cpu
Kconfig.cpufeatures * VDSO rework and cleanups 2026-02-10 19:34:26 -08:00
Kconfig.debug
Makefile x86/entry/vdso: Update the object paths for "make vdso_install" 2026-01-16 12:58:45 -08:00
Makefile_32.cpu x86/cpu: Drop unused Kconfig symbol X86_P6_NOP 2026-01-06 08:57:23 -08:00
Makefile.um