]> www.infradead.org Git - users/dwmw2/linux.git/commit
Merge branches 'asyncpf', 'asyncpf_abi', 'fixes', 'generic', 'misc', 'mmu', 'pmu... kvm-x86-next-2024.02.08
authorSean Christopherson <seanjc@google.com>
Fri, 9 Feb 2024 00:18:44 +0000 (00:18 +0000)
committerSean Christopherson <seanjc@google.com>
Fri, 9 Feb 2024 00:18:44 +0000 (00:18 +0000)
commit7455665a3521aa7b56245c0a2810f748adc5fdd4
tree26d815269b04ca1be6248217c364b217ded2a275
parent41bccc98fb7931d63d03f326a746ac4d429c1dd3
parentc2744ed2230a92636f04cde48f2f7d8d3486e194
parentdf01f0a1165c35e95b5f52c7ba25c19020352ff9
parent3376ca3f1a2075eaa23c5576c47d04d7e8a4adda
parentd489ec95658392a000dd26fba511eec1900245b0
parent64435aaa4a6aca019fabca7df45e0782d98a477b
parent0dbd054699661dfffbc1c148664f8d03fd132569
parent83bdfe04c968e0fe3181e4cd41b764e17ac73911
parent6fd78beed0213655c16ef728af0caec6d5ae4c73
parentfdd58834d132046149699b88a27a0db26829f4fb
parentd7f0a00e438d2275d398536d78aab4097a3aa25e
Merge branches 'asyncpf', 'asyncpf_abi', 'fixes', 'generic', 'misc', 'mmu', 'pmu', 'selftests', 'svm' and 'vmx'

* asyncpf:
  KVM: Nullify async #PF worker's "apf" pointer as soon as it might be freed
  KVM: Get reference to VM's address space in the async #PF worker
  KVM: Put mm immediately after async #PF worker completes remote gup()
  KVM: Always flush async #PF workqueue when vCPU is being destroyed

* asyncpf_abi:
  KVM: x86: Improve documentation of MSR_KVM_ASYNC_PF_EN
  x86/kvm: Use separate percpu variable to track the enabling of asyncpf

* fixes:
  KVM: x86: Fix KVM_GET_MSRS stack info leak
  KVM: x86/pmu: Fix type length error when reading pmu->fixed_ctr_ctrl
  KVM: x86: make KVM_REQ_NMI request iff NMI pending for vcpu

* generic:
  KVM: Harden against unpaired kvm_mmu_notifier_invalidate_range_end() calls

* misc:
  KVM: x86: rename push to emulate_push for consistency
  KVM: x86: Clean up partially uninitialized integer in emulate_pop()
  KVM: x86/emulator: emulate movbe with operand-size prefix
  KVM: x86: Fix broken debugregs ABI for 32 bit kernels
  KVM: x86: Use mutex guards to eliminate __kvm_x86_vendor_init()

* mmu:
  KVM: x86/mmu: Use KMEM_CACHE instead of kmem_cache_create()

* pmu: (39 commits)
  KVM: x86/pmu: Avoid CPL lookup if PMC enabline for USER and KERNEL is the same
  KVM: x86/pmu: Check eventsel first when emulating (branch) insns retired
  KVM: x86/pmu: Expand the comment about what bits are check emulating events
  KVM: x86/pmu: Snapshot event selectors that KVM emulates in software
  KVM: x86/pmu: Process only enabled PMCs when emulating events in software
  KVM: x86/pmu: Add macros to iterate over all PMCs given a bitmap
  KVM: x86/pmu: Snapshot and clear reprogramming bitmap before reprogramming
  KVM: x86/pmu: Move pmc_idx => pmc translation helper to common code
  KVM: x86/pmu: Add common define to capture fixed counters offset
  KVM: x86/pmu: Zero out PMU metadata on AMD if PMU is disabled
  KVM: selftests: Extend PMU counters test to validate RDPMC after WRMSR
  KVM: selftests: Add helpers for safe and safe+forced RDMSR, RDPMC, and XGETBV
  KVM: selftests: Add a forced emulation variation of KVM_ASM_SAFE()
  KVM: selftests: Test PMC virtualization with forced emulation
  KVM: selftests: Move KVM_FEP macro into common library header
  KVM: selftests: Query module param to detect FEP in MSR filtering test
  KVM: selftests: Add helpers to read integer module params
  KVM: selftests: Add a helper to query if the PMU module param is enabled
  KVM: selftests: Expand PMU counters test to verify LLC events
  KVM: selftests: Add functional test for Intel's fixed PMU counters
  ...

* selftests:
  KVM: selftests: Don't assert on exact number of 4KiB in dirty log split test
  KVM: selftests: Fix a semaphore imbalance in the dirty ring logging test
  KVM: x86: Make gtod_is_based_on_tsc() return 'bool'
  KVM: selftests: Make hyperv_clock require TSC based system clocksource
  KVM: selftests: Run clocksource dependent tests with hyperv_clocksource_tsc_page too
  KVM: selftests: Use generic sys_clocksource_is_tsc() in vmx_nested_tsc_scaling_test
  KVM: selftests: Generalize check_clocksource() from kvm_clock_test
  KVM: selftests: Fail tests when open() fails with !ENOENT
  KVM: selftests: Avoid infinite loop in hyperv_features when invtsc is missing
  KVM: selftests: Delete superfluous, unused "stage" variable in AMX test
  KVM: selftests: x86_64: Remove redundant newlines
  KVM: selftests: s390x: Remove redundant newlines
  KVM: selftests: riscv: Remove redundant newlines
  KVM: selftests: aarch64: Remove redundant newlines
  KVM: selftests: Remove redundant newlines
  KVM: selftests: Reword the NX hugepage test's skip message to be more helpful

* svm:
  KVM: SVM: Return -EINVAL instead of -EBUSY on attempt to re-init SEV/SEV-ES
  KVM: SVM: Add support for allowing zero SEV ASIDs
  KVM: SVM: Use unsigned integers when dealing with ASIDs
  KVM: SVM: Set sev->asid in sev_asid_new() instead of overloading the return

* vmx:
  KVM: VMX: Report up-to-date exit qualification to userspace
arch/x86/kvm/emulate.c
arch/x86/kvm/vmx/pmu_intel.c
arch/x86/kvm/x86.c
tools/testing/selftests/kvm/include/x86_64/processor.h
tools/testing/selftests/kvm/lib/kvm_util.c
tools/testing/selftests/kvm/lib/x86_64/processor.c
tools/testing/selftests/kvm/x86_64/pmu_event_filter_test.c
tools/testing/selftests/kvm/x86_64/smaller_maxphyaddr_emulation_test.c