arm64: KVM: Move most of the fault decoding to C
authorMarc Zyngier <marc.zyngier@arm.com>
Wed, 28 Oct 2015 15:06:47 +0000 (15:06 +0000)
committerMarc Zyngier <marc.zyngier@arm.com>
Mon, 29 Feb 2016 18:34:18 +0000 (18:34 +0000)
commit5f05a72aed023e5824eebb2542b5397cb89188f4
tree71166b529f6e077e7153119e09f30fac8ff2d815
parent253dcbd39adb00890f3c350230ae310fcfeeb760
arm64: KVM: Move most of the fault decoding to C

The fault decoding process (including computing the IPA in the case
of a permission fault) would be much better done in C code, as we
have a reasonable infrastructure to deal with the VHE/non-VHE
differences.

Let's move the whole thing to C, including the workaround for
erratum 834220, and just patch the odd ESR_EL2 access remaining
in hyp-entry.S.

Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
arch/arm64/kernel/asm-offsets.c
arch/arm64/kvm/hyp/hyp-entry.S
arch/arm64/kvm/hyp/switch.c