On Fri, Jan 10, 2025 at 3:05 PM Sean Christopherson <seanjc@xxxxxxxxxx> wrote: > > On Tue, Nov 05, 2024, James Houghton wrote: > > Optimize both kvm_age_gfn and kvm_test_age_gfn's interaction with the > > shadow MMU by, rather than checking if our memslot has rmaps, check if > > No "our" (pronouns bad). > > > there are any indirect_shadow_pages at all. > > Again, use wording that is more conversational. I also think it's worthwhile to > call out when this optimization is helpful. E.g. > > When aging SPTEs and the TDP MMU is enabled, process the shadow MMU if and > only if the VM has at least one shadow page, as opposed to checking if the > VM has rmaps. Checking for rmaps will effectively yield a false positive > if the VM ran nested TDP VMs in the past, but is not currently doing so. Applied verbatim. Thanks. > > Signed-off-by: James Houghton <jthoughton@xxxxxxxxxx> > > --- > > arch/x86/kvm/mmu/mmu.c | 9 +++++++-- > > 1 file changed, 7 insertions(+), 2 deletions(-) > > > > diff --git a/arch/x86/kvm/mmu/mmu.c b/arch/x86/kvm/mmu/mmu.c > > index 793565a3a573..125d4c3ccceb 100644 > > --- a/arch/x86/kvm/mmu/mmu.c > > +++ b/arch/x86/kvm/mmu/mmu.c > > @@ -1582,6 +1582,11 @@ static bool kvm_rmap_age_gfn_range(struct kvm *kvm, > > return young; > > } > > > > +static bool kvm_has_shadow_mmu_sptes(struct kvm *kvm) > > I think this should be kvm_may_have_shadow_mmu_sptes(), or something along those > lines that makes it clear the check is imprecise. E.g. to avoid someone thinking > that KVM is guaranteed to have shadow MMU SPTEs if it returns true. Sounds good to me. Renamed.