* [GIT PULL] KVM: x86: APIC changes for 6.3
@ 2023-02-15 1:07 Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: Non-x86 " Sean Christopherson
` (6 more replies)
0 siblings, 7 replies; 9+ messages in thread
From: Sean Christopherson @ 2023-02-15 1:07 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: kvm
KVM x86 APIC related changes for 6.3. Emanuele's fix for userspace forcing an
x2APIC => xAPIC transition is the most interesting change, the rest is minor
fixes and cleanups.
The following changes since commit 7cb79f433e75b05d1635aefaa851cfcd1cb7dc4f:
KVM: PPC: Fix refactoring goof in kvmppc_e500mc_init() (2023-01-24 13:00:32 -0500)
are available in the Git repository at:
https://github.com/kvm-x86/linux.git tags/kvm-x86-apic-6.3
for you to fetch changes up to eb98192576315d3f4c6c990d589ab398e7091782:
KVM: selftests: Verify APIC_ID is set when forcing x2APIC=>xAPIC transition (2023-02-01 16:22:54 -0800)
----------------------------------------------------------------
KVM x86 APIC changes for 6.3:
- Remove a superfluous variables from apic_get_tmcct()
- Fix various edge cases in x2APIC MSR emulation
- Mark APIC timer as expired if its in one-shot mode and the count
underflows while the vCPU task was being migrated
- Reset xAPIC when userspace forces "impossible" x2APIC => xAPIC transition
----------------------------------------------------------------
Emanuele Giuseppe Esposito (2):
KVM: x86: Reinitialize xAPIC ID when userspace forces x2APIC => xAPIC
KVM: selftests: Verify APIC_ID is set when forcing x2APIC=>xAPIC transition
Li RongQing (1):
KVM: x86: fire timer when it is migrated and expired, and in oneshot mode
Sean Christopherson (6):
KVM: x86: Inject #GP if WRMSR sets reserved bits in APIC Self-IPI
KVM: x86: Inject #GP on x2APIC WRMSR that sets reserved bits 63:32
KVM: x86: Mark x2APIC DFR reg as non-existent for x2APIC
KVM: x86: Split out logic to generate "readable" APIC regs mask to helper
KVM: VMX: Always intercept accesses to unsupported "extended" x2APIC regs
KVM: VMX: Intercept reads to invalid and write-only x2APIC registers
zhang songyi (1):
KVM: x86: remove redundant ret variable
arch/x86/kvm/lapic.c | 77 +++++++++++++---------
arch/x86/kvm/lapic.h | 2 +
arch/x86/kvm/vmx/vmx.c | 40 +++++------
.../selftests/kvm/x86_64/xapic_state_test.c | 55 ++++++++++++++++
4 files changed, 125 insertions(+), 49 deletions(-)
^ permalink raw reply [flat|nested] 9+ messages in thread
* [GIT PULL] KVM: Non-x86 changes for 6.3
2023-02-15 1:07 [GIT PULL] KVM: x86: APIC changes for 6.3 Sean Christopherson
@ 2023-02-15 1:07 ` Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: Misc " Sean Christopherson
` (5 subsequent siblings)
6 siblings, 0 replies; 9+ messages in thread
From: Sean Christopherson @ 2023-02-15 1:07 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: kvm
Non-x86, a.k.a. generic, KVM changes for 6.3. Mostly trivial patches, the most
interesting is the coalesced MMIO fix. Wei's cleanup[1] for the device buses
proved to be less trivial than originally thought, so I opted to get the basic
fix landed before doing the cleanup.
Note! There are two KVM-wide patches[2][3] that I didn't grab, but that can
probably go into 6.3, especially the one from Paul.
[1] https://lore.kernel.org/all/20230207123713.3905-1-wei.w.wang@intel.com
[2] https://lore.kernel.org/all/20230118035629.GT2948950@paulmck-ThinkPad-P17-Gen-1
[3] https://lore.kernel.org/all/20221229123338.4142-1-wei.w.wang@intel.com
The following changes since commit 7cb79f433e75b05d1635aefaa851cfcd1cb7dc4f:
KVM: PPC: Fix refactoring goof in kvmppc_e500mc_init() (2023-01-24 13:00:32 -0500)
are available in the Git repository at:
https://github.com/kvm-x86/linux.git tags/kvm-x86-generic-6.3
for you to fetch changes up to 5bad5d55d884d57acba92a3309cde4cbb26dfefc:
KVM: update code comment in struct kvm_vcpu (2023-02-07 17:58:19 -0800)
----------------------------------------------------------------
Common KVM changes for 6.3:
- Account allocations in generic kvm_arch_alloc_vm()
- Fix a typo and a stale comment
- Fix a memory leak if coalesced MMIO unregistration fails
----------------------------------------------------------------
Alexey Dobriyan (1):
KVM: account allocation in generic version of kvm_arch_alloc_vm()
Sean Christopherson (1):
KVM: Destroy target device if coalesced MMIO unregistration fails
Wang Liang (1):
kvm_host.h: fix spelling typo in function declaration
Wang Yong (1):
KVM: update code comment in struct kvm_vcpu
include/linux/kvm_host.h | 6 +++---
virt/kvm/coalesced_mmio.c | 8 +++++---
2 files changed, 8 insertions(+), 6 deletions(-)
^ permalink raw reply [flat|nested] 9+ messages in thread
* [GIT PULL] KVM: x86: Misc changes for 6.3
2023-02-15 1:07 [GIT PULL] KVM: x86: APIC changes for 6.3 Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: Non-x86 " Sean Christopherson
@ 2023-02-15 1:07 ` Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: MMU " Sean Christopherson
` (4 subsequent siblings)
6 siblings, 0 replies; 9+ messages in thread
From: Sean Christopherson @ 2023-02-15 1:07 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: kvm
Misc KVM x86 changes for 6.3.
Note, the cpufeatures.h change will conflict with changes in the tip tree, but
the resolution should be straightforward.
The following changes since commit 7cb79f433e75b05d1635aefaa851cfcd1cb7dc4f:
KVM: PPC: Fix refactoring goof in kvmppc_e500mc_init() (2023-01-24 13:00:32 -0500)
are available in the Git repository at:
https://github.com/kvm-x86/linux.git tags/kvm-x86-misc-6.3
for you to fetch changes up to e73ba25fdc241c06ab48a1f708a30305d6036e66:
KVM: x86: Simplify msr_io() (2023-02-03 15:55:17 -0800)
----------------------------------------------------------------
KVM x86 changes for 6.3:
- Advertise support for Intel's fancy new fast REP string features
- Fix a double-shootdown issue in the emergency reboot code
- Ensure GIF=1 and disable SVM during an emergency reboot, i.e. give SVM
similar treatment to VMX
- Update Xen's TSC info CPUID sub-leaves as appropriate
- Add support for Hyper-V's extended hypercalls, where "support" at this
point is just forwarding the hypercalls to userspace
- Clean up the kvm->lock vs. kvm->srcu sequences when updating the PMU and
MSR filters
- One-off fixes and cleanups
----------------------------------------------------------------
David Matlack (1):
KVM: x86: Replace cpu_dirty_logging_count with nr_memslots_dirty_logging
Jim Mattson (2):
x86/cpufeatures: Add macros for Intel's new fast rep string features
KVM: x86: Advertise fast REP string features inherent to the CPU
Kees Cook (1):
KVM: x86: Replace 0-length arrays with flexible arrays
Michal Luczaj (8):
KVM: x86/emulator: Fix segment load privilege level validation
KVM: x86/emulator: Fix comment in __load_segment_descriptor()
KVM: x86: Optimize kvm->lock and SRCU interaction (KVM_SET_PMU_EVENT_FILTER)
KVM: x86: Optimize kvm->lock and SRCU interaction (KVM_X86_SET_MSR_FILTER)
KVM: x86: Simplify msr_filter update
KVM: x86: Explicitly state lockdep condition of msr_filter update
KVM: x86: Remove unnecessary initialization in kvm_vm_ioctl_set_msr_filter()
KVM: x86: Simplify msr_io()
Paul Durrant (2):
KVM: x86/cpuid: generalize kvm_update_kvm_cpuid_base() and also capture limit
KVM: x86/xen: update Xen CPUID Leaf 4 (tsc info) sub-leaves, if present
Sean Christopherson (4):
x86/crash: Disable virt in core NMI crash handler to avoid double shootdown
x86/virt: Force GIF=1 prior to disabling SVM (for reboot flows)
x86/reboot: Disable virtualization in an emergency if SVM is supported
x86/reboot: Disable SVM, not just VMX, when stopping CPUs
Vipin Sharma (5):
KVM: x86: hyper-v: Use common code for hypercall userspace exit
KVM: x86: hyper-v: Add extended hypercall support in Hyper-v
KVM: selftests: Test Hyper-V extended hypercall enablement
KVM: selftests: Replace hardcoded Linux OS id with HYPERV_LINUX_OS_ID
KVM: selftests: Test Hyper-V extended hypercall exit to userspace
ye xingchen (1):
KVM: x86: Replace IS_ERR() with IS_ERR_VALUE()
arch/x86/include/asm/cpufeatures.h | 3 +
arch/x86/include/asm/kvm_host.h | 9 +-
arch/x86/include/asm/reboot.h | 2 +
arch/x86/include/asm/virtext.h | 16 +++-
arch/x86/include/asm/xen/hypervisor.h | 4 +-
arch/x86/include/uapi/asm/kvm.h | 5 +-
arch/x86/kernel/crash.c | 17 +---
arch/x86/kernel/reboot.c | 88 ++++++++++++++------
arch/x86/kernel/smp.c | 6 +-
arch/x86/kvm/cpuid.c | 31 ++++---
arch/x86/kvm/emulate.c | 6 +-
arch/x86/kvm/hyperv.c | 55 ++++++++----
arch/x86/kvm/pmu.c | 3 +-
arch/x86/kvm/vmx/vmx.c | 9 +-
arch/x86/kvm/x86.c | 34 +++-----
arch/x86/kvm/xen.c | 26 ++++++
arch/x86/kvm/xen.h | 7 ++
tools/testing/selftests/kvm/Makefile | 1 +
.../testing/selftests/kvm/include/x86_64/hyperv.h | 5 ++
tools/testing/selftests/kvm/lib/kvm_util.c | 1 +
tools/testing/selftests/kvm/x86_64/hyperv_clock.c | 2 +-
.../kvm/x86_64/hyperv_extended_hypercalls.c | 97 ++++++++++++++++++++++
.../testing/selftests/kvm/x86_64/hyperv_features.c | 9 ++
23 files changed, 327 insertions(+), 109 deletions(-)
create mode 100644 tools/testing/selftests/kvm/x86_64/hyperv_extended_hypercalls.c
^ permalink raw reply [flat|nested] 9+ messages in thread
* [GIT PULL] KVM: x86: MMU changes for 6.3
2023-02-15 1:07 [GIT PULL] KVM: x86: APIC changes for 6.3 Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: Non-x86 " Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: Misc " Sean Christopherson
@ 2023-02-15 1:07 ` Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: PMU " Sean Christopherson
` (3 subsequent siblings)
6 siblings, 0 replies; 9+ messages in thread
From: Sean Christopherson @ 2023-02-15 1:07 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: kvm
KVM x86/mmu changes for 6.3. Not much this time around, Hou's fixes for range-
based TLB flushing are by far the most interesting. Not that it likely affects
anything, but I'm expecting 6.4 to have quite a bit more MMU stuff.
The following changes since commit 7cb79f433e75b05d1635aefaa851cfcd1cb7dc4f:
KVM: PPC: Fix refactoring goof in kvmppc_e500mc_init() (2023-01-24 13:00:32 -0500)
are available in the Git repository at:
https://github.com/kvm-x86/linux.git tags/kvm-x86-mmu-6.3
for you to fetch changes up to 11b36fe7d4500c8ef73677c087f302fd713101c2:
KVM: x86/mmu: Use kstrtobool() instead of strtobool() (2023-01-24 10:05:49 -0800)
----------------------------------------------------------------
KVM x86 MMU changes for 6.3:
- Fix and cleanup the range-based TLB flushing code, used when KVM is
running on Hyper-V
- A few one-off cleanups
----------------------------------------------------------------
Christophe JAILLET (1):
KVM: x86/mmu: Use kstrtobool() instead of strtobool()
Hou Wenlong (6):
KVM: x86/mmu: Move round_gfn_for_level() helper into mmu_internal.h
KVM: x86/mmu: Fix wrong gfn range of tlb flushing in kvm_set_pte_rmapp()
KVM: x86/mmu: Reduce gfn range of tlb flushing in tdp_mmu_map_handle_target_level()
KVM: x86/mmu: Fix wrong start gfn of tlb flushing with range
KVM: x86/mmu: Fix wrong gfn range of tlb flushing in validate_direct_spte()
KVM: x86/mmu: Cleanup range-based flushing for given page
Lai Jiangshan (2):
kvm: x86/mmu: Rename SPTE_TDP_AD_ENABLED_MASK to SPTE_TDP_AD_ENABLED
kvm: x86/mmu: Don't clear write flooding for direct SP
Wei Liu (1):
KVM: x86/mmu: fix an incorrect comment in kvm_mmu_new_pgd()
arch/x86/kvm/mmu/mmu.c | 45 +++++++++++++++++++++++++----------------
arch/x86/kvm/mmu/mmu_internal.h | 14 +++++++++++++
arch/x86/kvm/mmu/paging_tmpl.h | 13 +++++-------
arch/x86/kvm/mmu/spte.c | 6 +++---
arch/x86/kvm/mmu/spte.h | 16 +++++++--------
arch/x86/kvm/mmu/tdp_iter.c | 11 +++-------
arch/x86/kvm/mmu/tdp_mmu.c | 6 ++----
7 files changed, 63 insertions(+), 48 deletions(-)
^ permalink raw reply [flat|nested] 9+ messages in thread
* [GIT PULL] KVM: x86: PMU changes for 6.3
2023-02-15 1:07 [GIT PULL] KVM: x86: APIC changes for 6.3 Sean Christopherson
` (2 preceding siblings ...)
2023-02-15 1:07 ` [GIT PULL] KVM: x86: MMU " Sean Christopherson
@ 2023-02-15 1:07 ` Sean Christopherson
2023-02-15 13:24 ` Paolo Bonzini
2023-02-15 1:07 ` [GIT PULL] KVM: x86: Selftests " Sean Christopherson
` (2 subsequent siblings)
6 siblings, 1 reply; 9+ messages in thread
From: Sean Christopherson @ 2023-02-15 1:07 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: kvm
KVM x86/pmu changes for 6.3. The most noteworthy patches are two fixes that
_aren't_ in this pull request. The arch LBRs fix came late in the cycle and
doesn't seem super urgent, not sure if it needs to go into 6.3. Disabling vPMU
support on hybrid CPUs is much more urgent, but I want your input before
proceeding.
https://lore.kernel.org/all/20230128001427.2548858-1-seanjc@google.com
https://lore.kernel.org/all/20230208204230.1360502-1-seanjc@google.com
The following changes since commit 7cb79f433e75b05d1635aefaa851cfcd1cb7dc4f:
KVM: PPC: Fix refactoring goof in kvmppc_e500mc_init() (2023-01-24 13:00:32 -0500)
are available in the Git repository at:
https://github.com/kvm-x86/linux.git tags/kvm-x86-pmu-6.3
for you to fetch changes up to 13738a3647368f7f600b30d241779bcd2a3ebbfd:
perf/x86/intel: Expose EPT-friendly PEBS for SPR and future models (2023-02-01 16:42:36 -0800)
----------------------------------------------------------------
KVM x86 PMU changes for 6.3:
- Add support for created masked events for the PMU filter to allow
userspace to heavily restrict what events the guest can use without
needing to create an absurd number of events
- Clean up KVM's handling of "PMU MSRs to save", especially when vPMU
support is disabled
- Add PEBS support for Intel SPR
----------------------------------------------------------------
Aaron Lewis (7):
KVM: x86/pmu: Correct the mask used in a pmu event filter lookup
KVM: x86/pmu: Remove impossible events from the pmu event filter
KVM: x86/pmu: prepare the pmu event filter for masked events
KVM: x86/pmu: Introduce masked events to the pmu event filter
KVM: selftests: Add flags when creating a pmu event filter
KVM: selftests: Add testing for KVM_SET_PMU_EVENT_FILTER
KVM: selftests: Test masked events in PMU filter
Like Xu (4):
KVM: x86/pmu: Drop event_type and rename "struct kvm_event_hw_type_mapping"
KVM: x86/pmu: Don't tell userspace to save MSRs for non-existent fixed PMCs
KVM: x86/pmu: Add PRIR++ and PDist support for SPR and later models
perf/x86/intel: Expose EPT-friendly PEBS for SPR and future models
Sean Christopherson (5):
KVM: x86/pmu: Cap kvm_pmu_cap.num_counters_gp at KVM's internal max
KVM: x86/pmu: Gate all "unimplemented MSR" prints on report_ignored_msrs
KVM: x86/pmu: Use separate array for defining "PMU MSRs to save"
KVM: x86/pmu: Don't tell userspace to save PMU MSRs if PMU is disabled
KVM: x86/pmu: Provide "error" semantics for unsupported-but-known PMU MSRs
Documentation/virt/kvm/api.rst | 80 ++++-
arch/x86/events/intel/core.c | 1 +
arch/x86/events/intel/ds.c | 4 +-
arch/x86/include/asm/kvm_host.h | 15 +-
arch/x86/include/uapi/asm/kvm.h | 29 ++
arch/x86/kvm/hyperv.c | 10 +-
arch/x86/kvm/pmu.c | 286 +++++++++++++---
arch/x86/kvm/pmu.h | 13 +-
arch/x86/kvm/svm/pmu.c | 2 +
arch/x86/kvm/svm/svm.c | 5 +-
arch/x86/kvm/vmx/pmu_intel.c | 23 +-
arch/x86/kvm/vmx/vmx.c | 4 +-
arch/x86/kvm/x86.c | 230 +++++++------
arch/x86/kvm/x86.h | 12 +
include/uapi/linux/kvm.h | 1 +
.../selftests/kvm/x86_64/pmu_event_filter_test.c | 381 ++++++++++++++++++++-
16 files changed, 897 insertions(+), 199 deletions(-)
^ permalink raw reply [flat|nested] 9+ messages in thread
* [GIT PULL] KVM: x86: Selftests changes for 6.3
2023-02-15 1:07 [GIT PULL] KVM: x86: APIC changes for 6.3 Sean Christopherson
` (3 preceding siblings ...)
2023-02-15 1:07 ` [GIT PULL] KVM: x86: PMU " Sean Christopherson
@ 2023-02-15 1:07 ` Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: SVM " Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: VMX " Sean Christopherson
6 siblings, 0 replies; 9+ messages in thread
From: Sean Christopherson @ 2023-02-15 1:07 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: kvm
KVM selftests changes for 6.3. The highlight is Vishal's work to stop relying
on KVM to patch in VMMCALL when running on AMD.
There's one small series to cleanup the Xen shinfo test that I didn't grab, but
that arguably could/should go into 6.3:
https://lore.kernel.org/all/20230204024151.1373296-1-seanjc@google.com
The following changes since commit 7cb79f433e75b05d1635aefaa851cfcd1cb7dc4f:
KVM: PPC: Fix refactoring goof in kvmppc_e500mc_init() (2023-01-24 13:00:32 -0500)
are available in the Git repository at:
https://github.com/kvm-x86/linux.git tags/kvm-x86-selftests-6.3
for you to fetch changes up to 695fa5a64cf52ab1aa2c89c93bbb1fd08995304a:
KVM: selftests: Remove duplicate macro definition (2023-02-08 06:53:14 -0800)
----------------------------------------------------------------
KVM selftests changes for 6.3:
- Cache the CPU vendor (AMD vs. Intel) and use the info to emit the correct
hypercall instruction instead of relying on KVM to patch in VMMCALL
- A variety of one-off cleanups and fixes
----------------------------------------------------------------
Aaron Lewis (1):
KVM: selftests: Fix a typo in the vcpu_msrs_set assert
Gavin Shan (2):
KVM: selftests: Remove duplicate VM creation in memslot_perf_test
KVM: selftests: Assign guest page size in sync area early in memslot_perf_test
Jing Zhang (1):
KVM: selftests: Stop assuming stats are contiguous in kvm_binary_stats_test
Michal Luczaj (1):
KVM: selftests: Clean up misnomers in xen_shinfo_test
Reiji Watanabe (1):
KVM: selftests: kvm_vm_elf_load() and elfhdr_get() should close fd
Shaoqin Huang (2):
selftests: KVM: Replace optarg with arg in guest_modes_cmdline
KVM: selftests: Remove duplicate macro definition
Vishal Annapurve (3):
KVM: selftests: x86: Use "this_cpu" prefix for cpu vendor queries
KVM: selftests: x86: Cache host CPU vendor (AMD vs. Intel)
KVM: selftests: x86: Use host's native hypercall instruction in kvm_hypercall()
zhang songyi (1):
KVM: x86/xen: Remove unneeded semicolon
.../selftests/kvm/include/x86_64/processor.h | 30 ++++++++++++--
.../testing/selftests/kvm/kvm_binary_stats_test.c | 10 +----
tools/testing/selftests/kvm/lib/elf.c | 2 +
tools/testing/selftests/kvm/lib/guest_modes.c | 2 +-
tools/testing/selftests/kvm/lib/kvm_util.c | 3 --
tools/testing/selftests/kvm/lib/x86_64/processor.c | 46 ++++++++++------------
tools/testing/selftests/kvm/memslot_perf_test.c | 5 +--
.../selftests/kvm/x86_64/fix_hypercall_test.c | 4 +-
.../selftests/kvm/x86_64/mmio_warning_test.c | 2 +-
.../selftests/kvm/x86_64/pmu_event_filter_test.c | 4 +-
.../vmx_exception_with_invalid_guest_state.c | 2 +-
.../testing/selftests/kvm/x86_64/xen_shinfo_test.c | 15 +++----
12 files changed, 63 insertions(+), 62 deletions(-)
^ permalink raw reply [flat|nested] 9+ messages in thread
* [GIT PULL] KVM: x86: SVM changes for 6.3
2023-02-15 1:07 [GIT PULL] KVM: x86: APIC changes for 6.3 Sean Christopherson
` (4 preceding siblings ...)
2023-02-15 1:07 ` [GIT PULL] KVM: x86: Selftests " Sean Christopherson
@ 2023-02-15 1:07 ` Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: VMX " Sean Christopherson
6 siblings, 0 replies; 9+ messages in thread
From: Sean Christopherson @ 2023-02-15 1:07 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: kvm
KVM SVM changes for 6.3. There's a fix for x2AVIC that ideally would go into
6.3, but I didn't grab as I want a Reviewed-by and/or Tested-by from someone
with x2AVIC hardware (I massaged Suravee's original patch a fair bit).
https://lore.kernel.org/all/20230207002156.521736-1-seanjc@google.com
The following changes since commit 7cb79f433e75b05d1635aefaa851cfcd1cb7dc4f:
KVM: PPC: Fix refactoring goof in kvmppc_e500mc_init() (2023-01-24 13:00:32 -0500)
are available in the Git repository at:
https://github.com/kvm-x86/linux.git tags/kvm-x86-svm-6.3
for you to fetch changes up to f94f053aa3a5d6ff17951870483d9eb9e13de2e2:
KVM: SVM: Fix potential overflow in SEV's send|receive_update_data() (2023-02-07 14:36:45 -0800)
----------------------------------------------------------------
KVM SVM changes for 6.3:
- Fix a mostly benign overflow bug in SEV's send|receive_update_data()
- Move the SVM-specific "host flags" into vcpu_svm (extracted from the
vNMI enabling series)
- A handful for fixes and cleanups
----------------------------------------------------------------
Anish Ghulati (1):
KVM: SVM: Account scratch allocations used to decrypt SEV guest memory
Like Xu (1):
KVM: svm/avic: Drop "struct kvm_x86_ops" for avic_hardware_setup()
Maxim Levitsky (4):
KVM: nSVM: Don't sync tlb_ctl back to vmcb12 on nested VM-Exit
KVM: x86: Move HF_GIF_MASK into "struct vcpu_svm" as "guest_gif"
KVM: x86: Move HF_NMI_MASK and HF_IRET_MASK into "struct vcpu_svm"
KVM: x86: Use emulator callbacks instead of duplicating "host flags"
Peter Gonda (1):
KVM: SVM: Fix potential overflow in SEV's send|receive_update_data()
zhang songyi (1):
KVM: SVM: remove redundant ret variable
arch/x86/include/asm/kvm_host.h | 9 +++------
arch/x86/kvm/emulate.c | 11 +++++------
arch/x86/kvm/kvm_emulate.h | 7 ++-----
arch/x86/kvm/smm.c | 2 --
arch/x86/kvm/svm/avic.c | 2 +-
arch/x86/kvm/svm/nested.c | 1 -
arch/x86/kvm/svm/sev.c | 6 +++---
arch/x86/kvm/svm/svm.c | 29 +++++++++++++++--------------
arch/x86/kvm/svm/svm.h | 29 +++++++++++++++++++++++++----
arch/x86/kvm/x86.c | 14 +++++++++-----
10 files changed, 63 insertions(+), 47 deletions(-)
^ permalink raw reply [flat|nested] 9+ messages in thread
* [GIT PULL] KVM: x86: VMX changes for 6.3
2023-02-15 1:07 [GIT PULL] KVM: x86: APIC changes for 6.3 Sean Christopherson
` (5 preceding siblings ...)
2023-02-15 1:07 ` [GIT PULL] KVM: x86: SVM " Sean Christopherson
@ 2023-02-15 1:07 ` Sean Christopherson
6 siblings, 0 replies; 9+ messages in thread
From: Sean Christopherson @ 2023-02-15 1:07 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: kvm
KVM VMX changes for 6.3. The highlight is moving NMI VM-Exit handling under
the noinstr umbrella.
The following changes since commit 7cb79f433e75b05d1635aefaa851cfcd1cb7dc4f:
KVM: PPC: Fix refactoring goof in kvmppc_e500mc_init() (2023-01-24 13:00:32 -0500)
are available in the Git repository at:
https://github.com/kvm-x86/linux.git tags/kvm-x86-vmx-6.3
for you to fetch changes up to 93827a0a36396f2fd6368a54a020f420c8916e9b:
KVM: VMX: Fix crash due to uninitialized current_vmcs (2023-02-07 09:02:50 -0800)
----------------------------------------------------------------
KVM VMX changes for 6.3:
- Handle NMI VM-Exits before leaving the noinstr region
- A few trivial cleanups in the VM-Enter flows
- Stop enabling VMFUNC for L1 purely to document that KVM doesn't support
EPTP switching (or any other VM function) for L1
- Fix a crash when using eVMCS's enlighted MSR bitmaps
----------------------------------------------------------------
Alexandru Matei (1):
KVM: VMX: Fix crash due to uninitialized current_vmcs
Alexey Dobriyan (1):
KVM: VMX: don't use "unsigned long" in vmx_vcpu_enter_exit()
Sean Christopherson (8):
KVM: VMX: Access @flags as a 32-bit value in __vmx_vcpu_run()
KVM: x86: Make vmx_get_exit_qual() and vmx_get_intr_info() noinstr-friendly
KVM: VMX: Allow VM-Fail path of VMREAD helper to be instrumented
KVM: VMX: Always inline eVMCS read/write helpers
KVM: VMX: Always inline to_vmx() and to_kvm_vmx()
x86/entry: KVM: Use dedicated VMX NMI entry for 32-bit kernels too
KVM: VMX: Provide separate subroutines for invoking NMI vs. IRQ handlers
KVM: VMX: Handle NMI VM-Exits in noinstr region
Yu Zhang (2):
KVM: VMX: Do not trap VMFUNC instructions for L1 guests.
KVM: nVMX: Simplify the setting of SECONDARY_EXEC_ENABLE_VMFUNC for nested.
arch/x86/include/asm/idtentry.h | 16 ++++-----
arch/x86/kernel/nmi.c | 8 ++---
arch/x86/kvm/kvm_cache_regs.h | 12 +++++++
arch/x86/kvm/vmx/hyperv.h | 31 ++++++----------
arch/x86/kvm/vmx/nested.c | 21 +++++------
arch/x86/kvm/vmx/vmcs.h | 4 +--
arch/x86/kvm/vmx/vmenter.S | 80 ++++++++++++++++++++++-------------------
arch/x86/kvm/vmx/vmx.c | 72 ++++++++++++++++++++++---------------
arch/x86/kvm/vmx/vmx.h | 18 +++++-----
arch/x86/kvm/vmx/vmx_ops.h | 2 ++
arch/x86/kvm/x86.h | 6 ++--
11 files changed, 143 insertions(+), 127 deletions(-)
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT PULL] KVM: x86: PMU changes for 6.3
2023-02-15 1:07 ` [GIT PULL] KVM: x86: PMU " Sean Christopherson
@ 2023-02-15 13:24 ` Paolo Bonzini
0 siblings, 0 replies; 9+ messages in thread
From: Paolo Bonzini @ 2023-02-15 13:24 UTC (permalink / raw)
To: Sean Christopherson; +Cc: kvm
On 2/15/23 02:07, Sean Christopherson wrote:
> KVM x86/pmu changes for 6.3. The most noteworthy patches are two fixes that
> _aren't_ in this pull request. The arch LBRs fix came late in the cycle and
> doesn't seem super urgent, not sure if it needs to go into 6.3. Disabling vPMU
> support on hybrid CPUs is much more urgent, but I want your input before
> proceeding.
>
> https://lore.kernel.org/all/20230128001427.2548858-1-seanjc@google.com
> https://lore.kernel.org/all/20230208204230.1360502-1-seanjc@google.com
I agree, I will pick this one for 6.2 as well.
Paolo
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2023-02-15 13:25 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-15 1:07 [GIT PULL] KVM: x86: APIC changes for 6.3 Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: Non-x86 " Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: Misc " Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: MMU " Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: PMU " Sean Christopherson
2023-02-15 13:24 ` Paolo Bonzini
2023-02-15 1:07 ` [GIT PULL] KVM: x86: Selftests " Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: SVM " Sean Christopherson
2023-02-15 1:07 ` [GIT PULL] KVM: x86: VMX " Sean Christopherson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).