]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/commit - arch/powerpc/kernel/exceptions-64s.S
powerpc/64: Allow for relocation-on interrupts from guest to host
authorPaul Mackerras <paulus@ozlabs.org>
Tue, 28 Mar 2017 16:54:22 +0000 (13:54 -0300)
committerTim Gardner <tim.gardner@canonical.com>
Tue, 28 Mar 2017 20:17:54 +0000 (14:17 -0600)
commit40a6d87850fdb0ac24c9b04afd9e1dc132f7efb9
tree6cc828f51e30b29a332a21235b7c339a427e1170
parent2f0d6eceb0ab950297d5881a2f6326d60d6449ac
powerpc/64: Allow for relocation-on interrupts from guest to host

BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1675806
With host and guest both using radix translation, it is feasible
for the host to take interrupts that come from the guest with
relocation on, and that is in fact what the POWER9 hardware will
do when LPCR[AIL] = 3.  All such interrupts use HSRR0/1 not SRR0/1
except for system call with LEV=1 (hcall).

Therefore this adds the KVM tests to the _HV variants of the
relocation-on interrupt handlers, and adds the KVM test to the
relocation-on system call entry point.

We also instantiate the relocation-on versions of the hypervisor
data storage and instruction interrupt handlers, since these can
occur with relocation on in radix guests.

Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
(cherry picked from commit bc3551257af837fc603d295e59f9e32953525b98)
Signed-off-by: Breno Leitao <breno.leitao@gmail.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
arch/powerpc/include/asm/exception-64s.h
arch/powerpc/kernel/exceptions-64s.S