[GIT PULL] KVM fixes for Linux 5.18-rc6

From: Paolo Bonzini
Date: Fri May 06 2022 - 13:16:56 EST


Linus,

The following changes since commit f751d8eac17692905cdd6935f72d523d8adf3b65:

KVM: x86: work around QEMU issue with synthetic CPUID leaves (2022-04-29 15:24:58 -0400)

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 053d2290c0307e3642e75e0185ddadf084dc36c1:

KVM: VMX: Exit to userspace if vCPU has injected exception and invalid state (2022-05-06 13:08:06 -0400)

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

* Account for family 17h event renumberings in AMD PMU emulation

* Remove CPUID leaf 0xA on AMD processors

* Fix lockdep issue with locking all vCPUs

* Fix loss of A/D bits in SPTEs

* Fix syzkaller issue with invalid guest state

----------------------------------------------------------------
Kyle Huey (1):
KVM: x86/svm: Account for family 17h event renumberings in amd_pmc_perf_hw_id

Paolo Bonzini (2):
Merge branch 'kvm-tdp-mmu-atomicity-fix' into HEAD
Merge branch 'kvm-amd-pmu-fixes' into HEAD

Peter Gonda (1):
KVM: SEV: Mark nested locking of vcpu->lock

Sandipan Das (1):
kvm: x86/cpuid: Only provide CPUID leaf 0xA if host has architectural PMU

Sean Christopherson (4):
KVM: x86/mmu: Don't treat fully writable SPTEs as volatile (modulo A/D)
KVM: x86/mmu: Move shadow-present check out of spte_has_volatile_bits()
KVM: x86/mmu: Use atomic XCHG to write TDP MMU SPTEs with volatile bits
KVM: VMX: Exit to userspace if vCPU has injected exception and invalid state

arch/x86/kvm/cpuid.c | 5 +++
arch/x86/kvm/mmu/mmu.c | 34 +++----------------
arch/x86/kvm/mmu/spte.c | 28 ++++++++++++++++
arch/x86/kvm/mmu/spte.h | 4 ++-
arch/x86/kvm/mmu/tdp_iter.h | 34 +++++++++++++++++--
arch/x86/kvm/mmu/tdp_mmu.c | 82 +++++++++++++++++++++++++++++----------------
arch/x86/kvm/svm/pmu.c | 28 ++++++++++++++--
arch/x86/kvm/svm/sev.c | 42 ++++++++++++++++++++---
arch/x86/kvm/vmx/vmx.c | 2 +-
9 files changed, 190 insertions(+), 69 deletions(-)