]> git.hungrycats.org Git - linux/commit
KVM: x86: Fix ERAPS RAP clear on INVPCID single-context invalidation
authorEmily Ehlert <ehemily@amazon.de>
Mon, 18 May 2026 13:59:56 +0000 (13:59 +0000)
committerSean Christopherson <seanjc@google.com>
Thu, 21 May 2026 21:20:24 +0000 (14:20 -0700)
commitb60621c5121c9435eda99af7dc2100f5c0f88695
treee51b334ab428135af126e1676ba750a0d764c9ef
parent34065a5f3cf94886e59e2a8b5db00515f32d6cf2
KVM: x86: Fix ERAPS RAP clear on INVPCID single-context invalidation

Use kvm_register_mark_dirty() instead of kvm_register_is_dirty() to
actually mark VCPU_EXREG_ERAPS as dirty when emulating
INVPCID_TYPE_SINGLE_CTXT.  kvm_register_is_dirty() is a read-only
predicate whose return value is discarded, making the call a no-op.
Without this fix, a single-context INVPCID will not trigger a RAP clear
on the next VMRUN, breaking the ERAPS security guarantee.

Fixes: db5e82496492 ("KVM: SVM: Virtualize and advertise support for ERAPS")
Signed-off-by: Emily Ehlert <ehemily@amazon.de>
Link: https://patch.msgid.link/20260518135956.82569-1-ehemily@amazon.de
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/x86.c