James Hogan 1880afd605 KVM: MIPS/T&E: Add lockless GVA access helpers
Add helpers to allow for lockless direct access to the GVA space, by
changing the VCPU mode to READING_SHADOW_PAGE_TABLES for the duration of
the access. This allows asynchronous TLB flush requests in future
patches to safely trigger either a TLB flush before the direct GVA space
access, or a delay until the in-progress lockless direct access is
complete.

The kvm_trap_emul_gva_lockless_begin() and
kvm_trap_emul_gva_lockless_end() helpers take care of guarding the
direct GVA accesses, and kvm_trap_emul_gva_fault() tries to handle a
uaccess fault resulting from a flush having taken place.

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Radim Krčmář" <rkrcmar@redhat.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: linux-mips@linux-mips.org
Cc: kvm@vger.kernel.org
2017-02-03 15:21:11 +00:00
..
2016-02-19 09:51:43 +01:00
2016-10-06 17:31:02 +02:00
2016-12-18 18:18:03 -08:00
2016-08-03 08:16:30 +02:00
2016-04-03 12:32:09 +02:00
2016-10-06 18:01:28 +02:00
2016-10-04 16:13:57 +02:00
2016-05-28 12:35:09 +02:00
2015-11-11 08:36:36 +01:00
2016-11-04 00:37:15 +01:00