mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-07 17:27:11 -04:00
KVM: x86/mmu: Reword a misleading comment about checking gpte_changed()
Rewrite the comment in FNAME(fetch) to explain why KVM needs to check that the gPTE is still fresh before continuing the shadow page walk, even if KVM already has a linked shadow page for the gPTE in question. No functional change intended. Link: https://lore.kernel.org/r/20240802203900.348808-4-seanjc@google.com Signed-off-by: Sean Christopherson <seanjc@google.com>
This commit is contained in:
@@ -695,8 +695,14 @@ static int FNAME(fetch)(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault,
|
||||
return RET_PF_RETRY;
|
||||
|
||||
/*
|
||||
* Verify that the gpte in the page we've just write
|
||||
* protected is still there.
|
||||
* Verify that the gpte in the page, which is now either
|
||||
* write-protected or unsync, wasn't modified between the fault
|
||||
* and acquiring mmu_lock. This needs to be done even when
|
||||
* reusing an existing shadow page to ensure the information
|
||||
* gathered by the walker matches the information stored in the
|
||||
* shadow page (which could have been modified by a different
|
||||
* vCPU even if the page was already linked). Holding mmu_lock
|
||||
* prevents the shadow page from changing after this point.
|
||||
*/
|
||||
if (FNAME(gpte_changed)(vcpu, gw, it.level - 1))
|
||||
return RET_PF_RETRY;
|
||||
|
||||
Reference in New Issue
Block a user