[GIT PULL] KVM fixes for Linux 7.4-rc2

From: Paolo Bonzini

Date: Mon Nov 02 2026 - 18:11:35 EST


Linus,

The following changes since commit 1689c80fca308978ea1c9f03d15a500f4e44e2e1:

Merge tag 'kvmarm-fixes-7.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD (2026-10-28 19:01:07 +0100)

are available in the Git repository at:

https://git.kernel.org/pub/scm/virt/kvm/kvm.git tags/for-linus

for you to fetch changes up to d21eef2084a9af87ac2a783bc7c2b175ba114e4e:

KVM: VMX: Add array_index_nospec() to evmcs_field_offset() (2026-11-02 13:15:45 -0500)

----------------------------------------------------------------
x86:

- Check validity of vmcb01 save area copied from SMRAM on RSM

- Conditionally resched when retrying gPTE walk on A/D update failure

- Conditionally resched when restarting REP string emulation

- Process each host MSR entry at most once when unwinding failed VM-Entry

- Cap number of parents of page table pages, to avoid quadratic teardown

- Unconditionally reset MMU context when emulating INIT

- Flush guest TLB when emulating a RESET to strictly honor the spec

- Add array_index_nospec() to evmcs_field_offset()

----------------------------------------------------------------
Amirmohammad Eftekhar (1):
KVM: VMX: Add array_index_nospec() to evmcs_field_offset()

Sean Christopherson (7):
KVM: nSVM: Check validity of vmcs01 save area copied from SMRAM on RSM
KVM: x86/mmu: Conditionally resched when retrying gPTE walk on A/D update failure
KVM: x86: Conditionally resched when restarting REP string emulation
KVM: nVMX: Process each host MSR entry at most once when unwinding failed VM-Entry
KVM: x86/mmu: Cap number of parent PTEs per SP at 1000 (the arbitrary rmap limit)
KVM: x86: Unconditionally reset MMU context when emulating INIT
KVM: x86: Flush guest TLB when emulating a RESET to strictly honor the spec

arch/x86/kvm/mmu/mmu.c | 10 +++++++++
arch/x86/kvm/mmu/paging_tmpl.h | 11 +++++++++-
arch/x86/kvm/svm/nested.c | 23 ++++++++++++++-------
arch/x86/kvm/svm/svm.c | 2 ++
arch/x86/kvm/svm/svm.h | 2 ++
arch/x86/kvm/vmx/hyperv_evmcs.h | 2 ++
arch/x86/kvm/vmx/nested.c | 1 +
arch/x86/kvm/x86.c | 46 ++++++++++++++++++++++-------------------
8 files changed, 68 insertions(+), 29 deletions(-)