summaryrefslogtreecommitdiff
path: root/arch/mips/kvm/emulate.c
diff options
context:
space:
mode:
authorJames Hogan <james.hogan@imgtec.com>2016-11-28 21:39:24 +0300
committerJames Hogan <james.hogan@imgtec.com>2017-02-03 18:21:05 +0300
commita1ecc54d7ea629538116351a3ccc7d86bb9a3c69 (patch)
tree3e012830ccb843c32c83eba923be93fbb86b883c /arch/mips/kvm/emulate.c
parenta98dd7410370634496aa500abf90ec6336b494ae (diff)
downloadlinux-a1ecc54d7ea629538116351a3ccc7d86bb9a3c69.tar.xz
KVM: MIPS/T&E: Don't treat code fetch faults as MMIO
In order to make use of the CP0_BadInstr & CP0_BadInstrP registers we need to be a bit more careful not to treat code fetch faults as MMIO, lest we hit an UNPREDICTABLE register value when we try to emulate the MMIO load instruction but there was no valid instruction word available to the hardware. Add a kvm_is_ifetch_fault() helper to try to figure out whether a load fault was due to a code fetch, and prevent MMIO instruction emulation in that case. 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
Diffstat (limited to 'arch/mips/kvm/emulate.c')
0 files changed, 0 insertions, 0 deletions