[GIT PULL] KVM: x86: Misc changes for 7.1

From: Sean Christopherson

Date: Fri Apr 10 2026 - 19:59:20 EST


A truly misc bundle of changes. A few minor fixes, some cleanups, some
hardening, and one new feature (AVX512 BMM on AMD).

The following changes since commit 11439c4635edd669ae435eec308f4ab8a0804808:

Linux 7.0-rc2 (2026-03-01 15:39:31 -0800)

are available in the Git repository at:

https://github.com/kvm-x86/linux.git tags/kvm-x86-misc-7.1

for you to fetch changes up to de0bfdc7137d5132b71dd1fe7aa3ca3df4d68241:

KVM: x86: Advertise AVX512 Bit Matrix Multiply (BMM) to userspace (2026-03-12 10:56:36 -0700)

----------------------------------------------------------------
KVM x86 misc changes for 7.1

- Advertise support for AVX512 Bit Matrix Multiply (BMM) when it's present in
hardware (no additional emulation/virtualization required).

- Immediately fail the build if a required #define is missing in one of KVM's
headers that is included multiple times.

- Reject SET_GUEST_DEBUG with -EBUSY if there's an already injected exception,
mostly to prevent syzkaller from abusing the uAPI to trigger WARNs, but also
because it can help prevent userspace from unintentionally crashing the VM.

- Exempt SMM from CPUID faulting on Intel, as per the spec.

- Misc hardening and cleanup changes.

----------------------------------------------------------------
Anel Orazgaliyeva (1):
KVM: X86: Fix array_index_nospec protection in __pv_send_ipi

Carlos López (1):
KVM: x86/pmu: annotate struct kvm_x86_pmu_event_filter with __counted_by()

Jim Mattson (1):
KVM: x86: Ignore cpuid faulting in SMM

Li RongQing (2):
KVM: Mark halt poll and other module parameters with appropriate memory attributes
KVM: SVM: Mark module parameters as __ro_after_init for security and performance

Nikunj A Dadhania (1):
KVM: x86: Advertise AVX512 Bit Matrix Multiply (BMM) to userspace

Sean Christopherson (1):
KVM: x86: Immediately fail the build when possible if required #define is missing

Uros Bizjak (1):
KVM: x86: Zero-initialize temporary fxregs_state buffers in FXSAVE emulation

Yosry Ahmed (4):
KVM: x86: Check for injected exceptions before queuing a debug exception
KVM: x86: Drop redundant call to kvm_deliver_exception_payload()
KVM: x86: Move some EFER bits enablement to common code
KVM: x86: Use kvm_cpu_cap_has() for EFER bits enablement checks

xuanqingshi (1):
KVM: x86: Add LAPIC guard in kvm_apic_write_nodecode()

arch/x86/include/asm/cpufeatures.h | 1 +
arch/x86/include/asm/kvm-x86-ops.h | 10 +++++----
arch/x86/include/asm/kvm-x86-pmu-ops.h | 8 ++++---
arch/x86/include/asm/kvm_host.h | 2 +-
arch/x86/kvm/cpuid.c | 6 ++++--
arch/x86/kvm/emulate.c | 10 ++++-----
arch/x86/kvm/lapic.c | 13 +++++++-----
arch/x86/kvm/pmu.c | 2 +-
arch/x86/kvm/svm/avic.c | 4 ++--
arch/x86/kvm/svm/sev.c | 8 +++----
arch/x86/kvm/svm/svm.c | 39 ++++++++++++++--------------------
arch/x86/kvm/vmx/vmcs_shadow_fields.h | 5 +++--
arch/x86/kvm/vmx/vmx.c | 4 ----
arch/x86/kvm/x86.c | 26 +++++++++++++++++------
virt/kvm/kvm_main.c | 12 +++++------
15 files changed, 81 insertions(+), 69 deletions(-)