]> www.infradead.org Git - users/dwmw2/linux.git/commit
KVM: x86/mmu: Check for present SPTE when clearing dirty bit in TDP MMU
authorSean Christopherson <seanjc@google.com>
Sat, 26 Feb 2022 00:15:20 +0000 (00:15 +0000)
committerPaolo Bonzini <pbonzini@redhat.com>
Wed, 2 Mar 2022 14:12:01 +0000 (09:12 -0500)
commitde723baf32a24e8a2fa48f09cf4f651ae6045c6d
tree8fdae4563dbcdf69f277223c0e4b3f49ab9818c4
parentb652de1e3dfb3b49e539e88a684a68e333e1bd7c
KVM: x86/mmu: Check for present SPTE when clearing dirty bit in TDP MMU

Explicitly check for present SPTEs when clearing dirty bits in the TDP
MMU.  This isn't strictly required for correctness, as setting the dirty
bit in a defunct SPTE will not change the SPTE from !PRESENT to PRESENT.
However, the guarded MMU_WARN_ON() in spte_ad_need_write_protect() would
complain if anyone actually turned on KVM's MMU debugging.

Fixes: a6a0b05da9f3 ("kvm: x86/mmu: Support dirty logging for the TDP MMU")
Cc: Ben Gardon <bgardon@google.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Reviewed-by: Ben Gardon <bgardon@google.com>
Message-Id: <20220226001546.360188-3-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/mmu/tdp_mmu.c