[PATCH v2 0/5] KVM TLB flushing improvements (for radix)
Nicholas Piggin
npiggin at gmail.com
Mon Apr 16 14:32:35 AEST 2018
This series moves some of the radix mode TLB flushing into
powerpc/mm, which allows them them to implement the powerpc:tlbie
tracepoints for KVM invalidations.
This also fixes a partition scoped page fault performance issue
that was found by looking at partition scoped tlbie traces.
Since v1:
- Fixed a bug where I mixed up PRS values, leading to guest page
fault hangs.
- Fixed up the hash cases that still need to be done in real-mode.
- Dropped the hash changes including the interesting case of a
hash tlbie issued by a radix host, for mixed mode support.
This has survived some stress testing over the weekend now, so
it should be ready for wider review.
Thanks,
Nick
Nicholas Piggin (5):
KVM: PPC: Book3S HV: radix use correct tlbie sequence in
kvmppc_radix_tlbie_page
powerpc/mm/radix: implement LPID based TLB flushes to be used by KVM
KVM: PPC: Book3S HV: radix use the Linux TLB flush function in
kvmppc_radix_tlbie_page
KVM: PPC: Book3S HV: radix handle process scoped LPID flush in C, with
relocation on
KVM: PPC: Book3S HV: radix do not clear partition scoped page table
when page fault races with other vCPUs.
.../include/asm/book3s/64/tlbflush-radix.h | 6 +
arch/powerpc/kvm/book3s_64_mmu_radix.c | 78 ++++-----
arch/powerpc/kvm/book3s_hv.c | 26 +++
arch/powerpc/kvm/book3s_hv_rmhandlers.S | 13 +-
arch/powerpc/mm/tlb-radix.c | 160 ++++++++++++++++++
5 files changed, 238 insertions(+), 45 deletions(-)
--
2.17.0
More information about the Linuxppc-dev
mailing list