summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mxs
diff options
context:
space:
mode:
authorSean Christopherson <seanjc@google.com>2022-02-26 00:15:22 +0000
committerPaolo Bonzini <pbonzini@redhat.com>2022-03-08 09:31:23 -0500
commitdb01416b22d98b8c8474a418a97cdacfd947469d (patch)
treef634bcf6768e8a1645352f6b12a79ce2e949cfa3 /arch/arm/mach-mxs
parentf28e9c7fce14a8c82f9624c9efeccf40b046c522 (diff)
downloadlinux-db01416b22d98b8c8474a418a97cdacfd947469d.tar.bz2
KVM: x86/mmu: Formalize TDP MMU's (unintended?) deferred TLB flush logic
Explicitly ignore the result of zap_gfn_range() when putting the last reference to a TDP MMU root, and add a pile of comments to formalize the TDP MMU's behavior of deferring TLB flushes to alloc/reuse. Note, this only affects the !shared case, as zap_gfn_range() subtly never returns true for "flush" as the flush is handled by tdp_mmu_zap_spte_atomic(). Putting the root without a flush is ok because even if there are stale references to the root in the TLB, they are unreachable because KVM will not run the guest with the same ASID without first flushing (where ASID in this context refers to both SVM's explicit ASID and Intel's implicit ASID that is constructed from VPID+PCID+EPT4A+etc...). Signed-off-by: Sean Christopherson <seanjc@google.com> Message-Id: <20220226001546.360188-5-seanjc@google.com> Reviewed-by: Mingwei Zhang <mizhang@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/arm/mach-mxs')
0 files changed, 0 insertions, 0 deletions