[PATCH 0/4] Unlocked TLB flush

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patchset implements unlocked TLB flushing for KVM.  An operation that
generates stale TLB entries can mark the TLB as dirty instead of flushing
immediately, and then flush after releasing mmu_lock but before returning
to the guest or the caller.  A few call sites are converted too.

Note not all call sites are easily convertible; as an example, sync_page()
must flush before reading the guest page table.

Avi Kivity (4):
  KVM: Add APIs for unlocked TLB flush
  KVM: Flush TLB in mmu notifier without holding mmu_lock
  KVM: Flush TLB in FNAME(invlpg) without holding mmu_lock
  KVM: Flush TLB in change_pte mmu notifier without holding mmu_lock

 Documentation/virtual/kvm/locking.txt |   14 ++++++++++++
 arch/x86/kvm/mmu.c                    |   15 +++++--------
 arch/x86/kvm/paging_tmpl.h            |    9 ++++----
 include/linux/kvm_host.h              |   22 ++++++++++++++++++-
 virt/kvm/kvm_main.c                   |   39 +++++++++++++++++++++++----------
 5 files changed, 72 insertions(+), 27 deletions(-)

-- 
1.7.10

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux