[GIT PULL] KVM fixes for 5.18-rc3

From: Paolo Bonzini
Date: Tue Apr 12 2022 - 13:27:03 EST


Linus,

The following changes since commit 3123109284176b1532874591f7c81f3837bbdc17:

Linux 5.18-rc1 (2022-04-03 14:08:21 -0700)

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 42dcbe7d8bac997eef4c379e61d9121a15ed4e36:

KVM: x86: hyper-v: Avoid writing to TSC page without an active vCPU (2022-04-11 13:29:51 -0400)

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

* Miscellaneous bugfixes

* A small cleanup for the new workqueue code

* Documentation syntax fix

RISC-V:

* Remove hgatp zeroing in kvm_arch_vcpu_put()

* Fix alignment of the guest_hang() in KVM selftest

* Fix PTE A and D bits in KVM selftest

* Missing #include in vcpu_fp.c

ARM:

* Some PSCI fixes after introducing PSCIv1.1 and SYSTEM_RESET2

* Fix the MMU write-lock not being taken on THP split

* Fix mixed-width VM handling

* Fix potential UAF when debugfs registration fails

* Various selftest updates for all of the above

----------------------------------------------------------------
Andrew Jones (1):
KVM: selftests: get-reg-list: Add KVM_REG_ARM_FW_REG(3)

Anup Patel (3):
RISC-V: KVM: Don't clear hgatp CSR in kvm_arch_vcpu_put()
KVM: selftests: riscv: Set PTE A and D bits in VS-stage page table
KVM: selftests: riscv: Fix alignment of the guest_hang() function

Bagas Sanjaya (1):
Documentation: kvm: Add missing line break in api.rst

Heiko Stuebner (1):
RISC-V: KVM: include missing hwcap.h into vcpu_fp

Like Xu (2):
selftests: kvm: add tsc_scaling_sync to .gitignore
Documentation: KVM: Add SPDX-License-Identifier tag

Lv Ruyi (1):
KVM: x86/mmu: remove unnecessary flush_workqueue()

Oliver Upton (7):
KVM: arm64: Generally disallow SMC64 for AArch32 guests
KVM: arm64: Actually prevent SMC64 SYSTEM_RESET2 from AArch32
KVM: arm64: Drop unneeded minor version check from PSCI v1.x handler
KVM: arm64: Don't split hugepages outside of MMU write lock
KVM: Don't create VM debugfs files outside of the VM directory
selftests: KVM: Don't leak GIC FD across dirty log test iterations
selftests: KVM: Free the GIC FD when cleaning up in arch_timer

Paolo Bonzini (3):
KVM: avoid NULL pointer dereference in kvm_dirty_ring_push
Merge tag 'kvmarm-fixes-5.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD
Merge tag 'kvm-riscv-fixes-5.18-1' of https://github.com/kvm-riscv/linux into HEAD

Peter Gonda (1):
KVM: SEV: Add cond_resched() to loop in sev_clflush_pages()

Reiji Watanabe (2):
KVM: arm64: mixed-width check should be skipped for uninitialized vCPUs
KVM: arm64: selftests: Introduce vcpu_width_config

Sean Christopherson (1):
KVM: x86/mmu: Resolve nx_huge_pages when kvm.ko is loaded

Suravee Suthikulpanit (1):
KVM: SVM: Do not activate AVIC for SEV-enabled guest

Vitaly Kuznetsov (1):
KVM: x86: hyper-v: Avoid writing to TSC page without an active vCPU

Yu Zhe (1):
KVM: arm64: vgic: Remove unnecessary type castings

Documentation/virt/kvm/api.rst | 1 +
Documentation/virt/kvm/vcpu-requests.rst | 2 +
.../virt/kvm/x86/amd-memory-encryption.rst | 2 +
Documentation/virt/kvm/x86/errata.rst | 2 +-
.../virt/kvm/x86/running-nested-guests.rst | 2 +
arch/arm64/include/asm/kvm_emulate.h | 27 +++--
arch/arm64/include/asm/kvm_host.h | 10 ++
arch/arm64/kvm/mmu.c | 11 +-
arch/arm64/kvm/psci.c | 31 +++---
arch/arm64/kvm/reset.c | 65 +++++++----
arch/arm64/kvm/vgic/vgic-debug.c | 10 +-
arch/arm64/kvm/vgic/vgic-its.c | 2 +-
arch/riscv/kvm/vcpu.c | 2 -
arch/riscv/kvm/vcpu_fp.c | 1 +
arch/x86/include/asm/kvm_host.h | 10 +-
arch/x86/kvm/hyperv.c | 40 ++-----
arch/x86/kvm/hyperv.h | 2 +-
arch/x86/kvm/mmu/mmu.c | 20 +++-
arch/x86/kvm/mmu/tdp_mmu.c | 2 +-
arch/x86/kvm/svm/avic.c | 3 +-
arch/x86/kvm/svm/sev.c | 3 +
arch/x86/kvm/x86.c | 27 ++++-
tools/testing/selftests/kvm/.gitignore | 2 +
tools/testing/selftests/kvm/Makefile | 1 +
tools/testing/selftests/kvm/aarch64/arch_timer.c | 15 ++-
tools/testing/selftests/kvm/aarch64/get-reg-list.c | 14 ++-
.../selftests/kvm/aarch64/vcpu_width_config.c | 122 +++++++++++++++++++++
tools/testing/selftests/kvm/dirty_log_perf_test.c | 34 +++++-
.../selftests/kvm/include/riscv/processor.h | 4 +-
tools/testing/selftests/kvm/lib/riscv/processor.c | 2 +-
virt/kvm/kvm_main.c | 12 +-
31 files changed, 357 insertions(+), 124 deletions(-)
create mode 100644 tools/testing/selftests/kvm/aarch64/vcpu_width_config.c