KVM: x86/mmu: Batch zap MMU pages when recycling oldest pages
authorSean Christopherson <sean.j.christopherson@intel.com>
Tue, 23 Jun 2020 19:35:40 +0000 (12:35 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Wed, 8 Jul 2020 20:21:51 +0000 (16:21 -0400)
commit6b82ef2c9cf18a48726e4bb359aa9014632f6466
tree1d8e645083432dbdec9e3bb5c04faaeecaa927e4
parentf95eec9bed76d42194c23153cb1cc8f186bf91cb
KVM: x86/mmu: Batch zap MMU pages when recycling oldest pages

Collect MMU pages for zapping in a loop when making MMU pages available,
and skip over active roots when doing so as zapping an active root can
never immediately free up a page.  Batching the zapping avoids multiple
remote TLB flushes and remedies the issue where the loop would bail
early if an active root was encountered.

Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Message-Id: <20200623193542.7554-3-sean.j.christopherson@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/mmu/mmu.c