[GIT PULL v2] KVM changes for Linux 5.1-rc6

From: Paolo Bonzini
Date: Tue Apr 16 2019 - 09:41:49 EST


Linus,

The following changes since commit 771acc7e4a6e5dba779cb1a7fd851a164bc81033:

Bluetooth: btusb: request wake pin with NOAUTOEN (2019-04-09 17:38:24 -1000)

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 7a223e06b1a411cef6c4cd7a9b9a33c8d225b10e:

KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing (2019-04-16 15:38:08 +0200)

5.1 keeps its reputation as a big bugfix release for KVM x86.

----------------------------------------------------------------
* Fix for a memory leak introduced during the merge window
* Fixes for nested VMX with ept=0
* Fixes for AMD (APIC virtualization, NMI injection)
* Fixes for Hyper-V under KVM and KVM under Hyper-V
* Fixes for 32-bit SMM and tests for SMM virtualization
* More array_index_nospec peppering

----------------------------------------------------------------
Ben Gardon (1):
kvm: mmu: Fix overflow on kvm mmu page limit calculation

Hariprasad Kelam (1):
KVM: x86: fix warning Using plain integer as NULL pointer

Liran Alon (2):
KVM: x86: Raise #GP when guest vCPU do not support PMU
KVM: nVMX: Expose RDPMC-exiting only when guest supports PMU

Paolo Bonzini (5):
KVM: nVMX: allow tests to use bad virtual-APIC page address
KVM: nVMX: always use early vmcs check when EPT is disabled
selftests: kvm/evmcs_test: complete I/O before migrating guest state
selftests: kvm: fix for compilers that do not support -no-pie
KVM: fix spectrev1 gadgets

Sean Christopherson (6):
KVM: x86/mmu: Fix an inverted list_empty() check when zapping sptes
KVM: x86: Load SMRAM in a single shot when leaving SMM
KVM: x86: Open code kvm_set_hflags
KVM: x86: clear SMM flags before loading state while leaving SMM
KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU
KVM: x86: Always use 32-bit SMRAM save state for 32-bit kernels

Suthikulpanit, Suravee (2):
Revert "svm: Fix AVIC incomplete IPI emulation"
svm/avic: Fix invalidate logical APIC id entry

Vitaly Kuznetsov (3):
KVM: x86: svm: make sure NMI is injected after nmi_singlestep
selftests: kvm: add a selftest for SMM
KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing

WANG Chao (1):
x86/kvm: move kvm_load/put_guest_xcr0 into atomic context

arch/x86/include/asm/kvm_emulate.h | 4 +-
arch/x86/include/asm/kvm_host.h | 17 +-
arch/x86/include/uapi/asm/vmx.h | 1 +
arch/x86/kvm/emulate.c | 191 +++++++++++----------
arch/x86/kvm/lapic.c | 4 +-
arch/x86/kvm/mmu.c | 15 +-
arch/x86/kvm/mmu.h | 2 +-
arch/x86/kvm/pmu.c | 4 +
arch/x86/kvm/svm.c | 57 +++---
arch/x86/kvm/trace.h | 4 +-
arch/x86/kvm/vmx/nested.c | 47 +++--
arch/x86/kvm/vmx/vmx.c | 35 +++-
arch/x86/kvm/vmx/vmx.h | 2 +
arch/x86/kvm/x86.c | 64 ++++---
arch/x86/kvm/x86.h | 2 +
include/linux/kvm_host.h | 10 +-
tools/testing/selftests/kvm/Makefile | 9 +-
.../selftests/kvm/include/x86_64/processor.h | 27 +++
tools/testing/selftests/kvm/lib/kvm_util.c | 5 +
tools/testing/selftests/kvm/lib/x86_64/processor.c | 20 ++-
tools/testing/selftests/kvm/x86_64/evmcs_test.c | 5 +-
tools/testing/selftests/kvm/x86_64/smm_test.c | 157 +++++++++++++++++
tools/testing/selftests/kvm/x86_64/state_test.c | 15 +-
virt/kvm/irqchip.c | 5 +-
virt/kvm/kvm_main.c | 6 +-
25 files changed, 496 insertions(+), 212 deletions(-)
create mode 100644 tools/testing/selftests/kvm/x86_64/smm_test.c