summaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorSean Christopherson2019-02-05 22:01:21 +0100
committerPaolo Bonzini2019-02-20 22:48:39 +0100
commit4e103134b862314dc2f2f18f2fb0ab972adc3f5f (patch)
treedccc458d31608d0d922d8af8265bdf938dc35e23 /block
parentKVM: x86/mmu: Split remote_flush+zap case out of kvm_mmu_flush_or_zap() (diff)
downloadkernel-qcow2-linux-4e103134b862314dc2f2f18f2fb0ab972adc3f5f.tar.gz
kernel-qcow2-linux-4e103134b862314dc2f2f18f2fb0ab972adc3f5f.tar.xz
kernel-qcow2-linux-4e103134b862314dc2f2f18f2fb0ab972adc3f5f.zip
KVM: x86/mmu: Zap only the relevant pages when removing a memslot
Modify kvm_mmu_invalidate_zap_pages_in_memslot(), a.k.a. the x86 MMU's handler for kvm_arch_flush_shadow_memslot(), to zap only the pages/PTEs that actually belong to the memslot being removed. This improves performance, especially why the deleted memslot has only a few shadow entries, or even no entries. E.g. a microbenchmark to access regular memory while concurrently reading PCI ROM to trigger memslot deletion showed a 5% improvement in throughput. Cc: Xiao Guangrong <guangrong.xiao@gmail.com> Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions