From: Sean Christopherson <seanjc@google.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org,
Sean Christopherson <seanjc@google.com>
Subject: [GIT PULL] KVM: x86: SVM changes for 7.2
Date: Thu, 11 Jun 2026 17:47:52 -0700 [thread overview]
Message-ID: <20260612004755.349925-8-seanjc@google.com> (raw)
In-Reply-To: <20260612004755.349925-1-seanjc@google.com>
Nested SVM is again the main theme this cycle. I think this is the last of the
changes? Barring one-offs that will inevitably meander in.
Note, there's no new capability or anything to enumerate support for Host-Only
and Guest-Only PMC support, which is sketchy, but I think is fine? Because
AFAICT, there's no way for hardware to communicate support, i.e. software just
has to assume it's there.
The following changes since commit b7fbe9a1bf9ee6c967ef77d366ca58c35fcf1887:
Merge branch 'kvm-apx-prepare' into HEAD (2026-05-13 12:38:31 -0400)
are available in the Git repository at:
https://github.com/kvm-x86/linux.git tags/kvm-x86-svm-7.2
for you to fetch changes up to adeb462cecae964ae4525512e31d54e545539476:
KVM: selftests: Add a test for gPAT handling in L2 (2026-06-03 05:42:35 -0700)
----------------------------------------------------------------
KVM SVN changes for 7.2
- Add support for virtualizing gPAT (KVM previously just used L1's PAT when
running L2).
- Fix goofs where KVM mishandles side effects (e.g. single-step and PMC
updates) when emulating VMRUN.
- Fix a variety of bugs in AVIC's handling of x2APIC MSR interception, most
notably where KVM didn't disable interception of IRR, ISR, and TMR regs.
- Add support for virtualizing Host-Only/Guest-Only bits in the mediated PMU.
----------------------------------------------------------------
Jim Mattson (9):
KVM: x86: Define KVM_X86_QUIRK_NESTED_SVM_SHARED_PAT
KVM: x86: nSVM: Clear VMCB_NPT clean bit when updating hPAT from guest mode
KVM: x86: nSVM: Cache and validate vmcb12 g_pat
KVM: x86: nSVM: Set vmcb02.g_pat correctly for nested NPT
KVM: x86: nSVM: Redirect IA32_PAT accesses to either hPAT or gPAT
KVM: x86: nSVM: Save gPAT to vmcb12.g_pat on VMEXIT
KVM: Documentation: document KVM_{GET,SET}_NESTED_STATE for SVM
KVM: x86: nSVM: Save/restore gPAT with KVM_{GET,SET}_NESTED_STATE
KVM: x86/pmu: Allow Host-Only/Guest-Only bits with nSVM and mediated PMU
Sean Christopherson (3):
KVM: x86: Add dedicated API for getting mask of accelerated x2APIC MSRs
KVM: SVM: Disable x2AVIC RDMSR interception for MSRs KVM actually supports
KVM: SVM: Only disable x2AVIC WRMSR interception for MSRs that are accelerated
Yosry Ahmed (13):
KVM: nSVM: Stop leaking single-stepping on VMRUN into L2
KVM: nSVM: Bail early out of VMRUN emulation if advancing RIP fails
KVM: nSVM: Unify RIP and PMU handling calls when emulating VMRUN
KVM: nSVM: Move VMRUN instruction retirement after entering guest mode
KVM: x86: Move enable_pmu/enable_mediated_pmu to pmu.h and pmu.c
KVM: x86/pmu: Rename reprogram_counters() to clarify usage
KVM: x86/pmu: Do a single atomic OR when reprogramming counters
KVM: x86/pmu: Check mediated PMU counter enablement before event filters
KVM: x86/pmu: Add support for KVM_X86_PMU_OP_OPTIONAL_RET0
KVM: x86/pmu: Disable counters based on Host-Only/Guest-Only bits in SVM
KVM: x86/pmu: Track mediated PMU counters with mode-specific enables
KVM: x86/pmu: Reprogram Host/Guest-Only counters on nested transitions
KVM: selftests: Add a test for gPAT handling in L2
Documentation/virt/kvm/api.rst | 26 +++
arch/x86/include/asm/kvm-x86-pmu-ops.h | 5 +-
arch/x86/include/asm/kvm_host.h | 6 +-
arch/x86/include/asm/perf_event.h | 2 +
arch/x86/include/uapi/asm/kvm.h | 2 +
arch/x86/kvm/lapic.c | 21 ++-
arch/x86/kvm/lapic.h | 2 +-
arch/x86/kvm/pmu.c | 21 ++-
arch/x86/kvm/pmu.h | 44 ++++-
arch/x86/kvm/svm/avic.c | 47 ++---
arch/x86/kvm/svm/nested.c | 107 ++++++++---
arch/x86/kvm/svm/pmu.c | 42 +++++
arch/x86/kvm/svm/svm.c | 40 ++++-
arch/x86/kvm/svm/svm.h | 44 ++++-
arch/x86/kvm/vmx/pmu_intel.c | 2 +-
arch/x86/kvm/vmx/vmx.c | 3 +-
arch/x86/kvm/x86.c | 9 -
arch/x86/kvm/x86.h | 3 -
tools/testing/selftests/kvm/Makefile.kvm | 1 +
.../selftests/kvm/x86/svm_nested_pat_test.c | 196 +++++++++++++++++++++
20 files changed, 525 insertions(+), 98 deletions(-)
create mode 100644 tools/testing/selftests/kvm/x86/svm_nested_pat_test.c
next prev parent reply other threads:[~2026-06-12 0:48 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-12 0:47 [GIT PULL] KVM: x86 pull requests " Sean Christopherson
2026-06-12 0:47 ` [GIT PULL] KVM: x86: Generic changes " Sean Christopherson
2026-06-12 8:07 ` Paolo Bonzini
2026-06-12 0:47 ` [GIT PULL] KVM: x86: guest_memfd " Sean Christopherson
2026-06-12 8:10 ` Paolo Bonzini
2026-06-12 0:47 ` [GIT PULL] KVM: x86: Misc " Sean Christopherson
2026-06-12 8:14 ` Paolo Bonzini
2026-06-12 0:47 ` [GIT PULL] KVM: x86: MMU " Sean Christopherson
2026-06-12 8:14 ` Paolo Bonzini
2026-06-12 0:47 ` [GIT PULL] KVM: x86: Selftests " Sean Christopherson
2026-06-12 8:12 ` Paolo Bonzini
2026-06-12 0:47 ` [GIT PULL] KVM: x86: SEV " Sean Christopherson
2026-06-12 8:13 ` Paolo Bonzini
2026-06-12 0:47 ` Sean Christopherson [this message]
2026-06-12 0:47 ` [GIT PULL] KVM: VFIO " Sean Christopherson
2026-06-12 8:14 ` Paolo Bonzini
2026-06-12 0:47 ` [GIT PULL] KVM: x86: VMX " Sean Christopherson
2026-06-12 8:15 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260612004755.349925-8-seanjc@google.com \
--to=seanjc@google.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=pbonzini@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®