]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: PPC: Book3S HV: Make radix handle process scoped LPID flush in C, with relocation on
authorNicholas Piggin <npiggin@gmail.com>
Thu, 17 May 2018 07:06:29 +0000 (17:06 +1000)
committerPaul Mackerras <paulus@ozlabs.org>
Fri, 18 May 2018 05:38:23 +0000 (15:38 +1000)
commit41a6d38fa3bd0cf2828d1443f074166a981951d6
treeb0fd551f5c1eb0389777a1c7a4ce39515d84a43a
parent541b3759fea146708d1f68718d7380555fafacf2
KVM: PPC: Book3S HV: Make radix handle process scoped LPID flush in C, with relocation on

The radix guest code can has fewer restrictions about what context it
can run in, so move this flushing out of assembly and have it use the
Linux TLB flush implementations introduced previously.

This allows powerpc:tlbie trace events to be used.

This changes the tlbiel sequence to only execute RIC=2 flush once on
the first set flushed, then RIC=0 for the rest of the sets. The end
result of the flush should be unchanged. This matches the local PID
flush pattern that was introduced in e9d8c867dd ("powerpc/mm/radix:
Optimise tlbiel flush all case").

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
arch/powerpc/kvm/book3s_hv.c
arch/powerpc/kvm/book3s_hv_rmhandlers.S