On Thu, Mar 9, 2023 at 8:01 AM Zhi Wang <zhi.wang.linux@xxxxxxxxx> wrote: > > On Mon, 6 Mar 2023 14:41:15 -0800 > Vipin Sharma <vipinsh@xxxxxxxxxx> wrote: > > > Use MMU shrinker to free unused pages in split_shadow_page_cache. > > Refactor the code and make common function to try emptying the page cache. > > > > Signed-off-by: Vipin Sharma <vipinsh@xxxxxxxxxx> > > --- > > arch/x86/kvm/mmu/mmu.c | 34 +++++++++++++++++++++------------- > > 1 file changed, 21 insertions(+), 13 deletions(-) > > > > diff --git a/arch/x86/kvm/mmu/mmu.c b/arch/x86/kvm/mmu/mmu.c > > index 0ebb8a2eaf47..73a0ac9c11ce 100644 > > --- a/arch/x86/kvm/mmu/mmu.c > > +++ b/arch/x86/kvm/mmu/mmu.c > > @@ -6696,13 +6696,24 @@ void kvm_mmu_invalidate_mmio_sptes(struct kvm *kvm, u64 gen) > > } > > } > > > > After adding the lock in the kvm_mmu_memory_cache, the cache_lock doesn't need > to be passed here and in mmu_shrink_scan(). > Agree. Let us see what is the decision on moving the lock inside the cache.