[PATCH v3 0/5] KVM: nVMX: Mark APIC page dirty on VM-Exit

Sean Christopherson posted 5 patches 2 months, 2 weeks ago
arch/x86/kvm/vmx/nested.c | 25 ++-----------------------
arch/x86/kvm/vmx/vmx.c    | 11 ++++++++++-
include/linux/kvm_host.h  |  9 ++++++++-
virt/kvm/kvm_main.c       |  2 +-
4 files changed, 21 insertions(+), 26 deletions(-)
[PATCH v3 0/5] KVM: nVMX: Mark APIC page dirty on VM-Exit
Posted by Sean Christopherson 2 months, 2 weeks ago
Extended version of Fred's patch to mark the APIC access page dirty on
VM-Exit (KVM already marks it dirty when it's unmapped).

v3:
 - Fix a benign memslots bug in __kvm_vcpu_map().
 - Mark vmcs12 pages dirty if and only if they're mapped (out-of-band).
 - Don't mark the APIC access page dirty when deliver nested posted IRQ.

v2: https://lore.kernel.org/all/20250910085156.1419090-1-griffoul@gmail.com

Fred Griffoul (1):
  KVM: nVMX: Mark APIC access page dirty when syncing vmcs12 pages

Sean Christopherson (4):
  KVM: Use vCPU specific memslots in __kvm_vcpu_map()
  KVM: x86: Mark vmcs12 pages as dirty if and only if they're mapped
  KVM: nVMX: Precisely mark vAPIC and PID maps dirty when delivering
    nested PI
  KVM: VMX: Move nested_mark_vmcs12_pages_dirty() to vmx.c, and rename

 arch/x86/kvm/vmx/nested.c | 25 ++-----------------------
 arch/x86/kvm/vmx/vmx.c    | 11 ++++++++++-
 include/linux/kvm_host.h  |  9 ++++++++-
 virt/kvm/kvm_main.c       |  2 +-
 4 files changed, 21 insertions(+), 26 deletions(-)


base-commit: 115d5de2eef32ac5cd488404b44b38789362dbe6
-- 
2.52.0.rc2.455.g230fcf2819-goog
Re: [PATCH v3 0/5] KVM: nVMX: Mark APIC page dirty on VM-Exit
Posted by Sean Christopherson 3 weeks, 4 days ago
On Fri, 21 Nov 2025 14:34:39 -0800, Sean Christopherson wrote:
> Extended version of Fred's patch to mark the APIC access page dirty on
> VM-Exit (KVM already marks it dirty when it's unmapped).
> 
> v3:
>  - Fix a benign memslots bug in __kvm_vcpu_map().
>  - Mark vmcs12 pages dirty if and only if they're mapped (out-of-band).
>  - Don't mark the APIC access page dirty when deliver nested posted IRQ.
> 
> [...]

Applied to kvm-x86 apic, thanks!

[1/5] KVM: Use vCPU specific memslots in __kvm_vcpu_map()
      https://github.com/kvm-x86/linux/commit/44da6629d282
[2/5] KVM: x86: Mark vmcs12 pages as dirty if and only if they're mapped
      https://github.com/kvm-x86/linux/commit/70b02809ded9
[3/5] KVM: nVMX: Precisely mark vAPIC and PID maps dirty when delivering nested PI
      https://github.com/kvm-x86/linux/commit/f74bb1d2eda1
[4/5] KVM: VMX: Move nested_mark_vmcs12_pages_dirty() to vmx.c, and rename
      https://github.com/kvm-x86/linux/commit/57dfa61f6248
[5/5] KVM: nVMX: Mark APIC access page dirty when syncing vmcs12 pages
      https://github.com/kvm-x86/linux/commit/c9d7134679eb

--
https://github.com/kvm-x86/linux/tree/next