]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: PPC: Book3S HV: Modify guest entry/exit paths to handle radix guests
authorPaul Mackerras <paulus@ozlabs.org>
Mon, 30 Jan 2017 10:21:45 +0000 (21:21 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 31 Jan 2017 08:11:48 +0000 (19:11 +1100)
commit6a7b2bc98f882862a6c85f60517492163481edd2
tree7592614fcde2aee646cda406e9e29ee8ef134f85
parent313c668d9b667d05faab0e674c8b5bad3b302124
KVM: PPC: Book3S HV: Modify guest entry/exit paths to handle radix guests

This adds code to  branch around the parts that radix guests don't
need - clearing and loading the SLB with the guest SLB contents,
saving the guest SLB contents on exit, and restoring the host SLB
contents.

Since the host is now using radix, we need to save and restore the
host value for the PID register.

On hypervisor data/instruction storage interrupts, we don't do the
guest HPT lookup on radix, but just save the guest physical address
for the fault (from the ASDR register) in the vcpu struct.

Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/kvm_host.h
arch/powerpc/kernel/asm-offsets.c
arch/powerpc/kvm/book3s_hv_rmhandlers.S