]> git.baikalelectronics.ru Git - kernel.git/commit
MIPS: KVM: Add MSA exception handling
authorJames Hogan <james.hogan@imgtec.com>
Fri, 6 Feb 2015 10:56:27 +0000 (10:56 +0000)
committerJames Hogan <james.hogan@imgtec.com>
Fri, 27 Mar 2015 21:25:20 +0000 (21:25 +0000)
commit1fad2f74c52ea4f36196dfc2f739e910850ba6a9
tree1a4d37e5ddfa872efda4ae2ea42c1655a27ec3d0
parent6d2ad7670e3f29d7f4bba8a45fc4d563b8c2895a
MIPS: KVM: Add MSA exception handling

Add guest exception handling for MIPS SIMD Architecture (MSA) floating
point exceptions and MSA disabled exceptions.

MSA floating point exceptions from the guest need passing to the guest
kernel, so for these a guest MSAFPE is emulated.

MSA disabled exceptions are normally handled by passing a reserved
instruction exception to the guest (because no guest MSA was supported),
but the hypervisor can now handle them if the guest has MSA by passing
an MSA disabled exception to the guest, or if the guest has MSA enabled
by transparently restoring the guest MSA context and enabling MSA and
the FPU.

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Paul Burton <paul.burton@imgtec.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Gleb Natapov <gleb@kernel.org>
Cc: linux-mips@linux-mips.org
Cc: kvm@vger.kernel.org
arch/mips/include/asm/kvm_host.h
arch/mips/kvm/emulate.c
arch/mips/kvm/mips.c
arch/mips/kvm/stats.c
arch/mips/kvm/trap_emul.c