linux/arch/mips/kvm
James Hogan edec9d7bdc KVM: MIPS/VZ: Trace guest mode changes
Create a trace event for guest mode changes, and enable VZ's
GuestCtl0.MC bit after the trace event is enabled to trap all guest mode
changes.

The MC bit causes Guest Hardware Field Change (GHFC) exceptions whenever
a guest mode change occurs (such as an exception entry or return from
exception), so we need to handle this exception now. The MC bit is only
enabled when restoring register state, so enabling the trace event won't
take immediate effect.

Tracing guest mode changes can be particularly handy when trying to work
out what a guest OS gets up to before something goes wrong, especially
if the problem occurs as a result of some previous guest userland
exception which would otherwise be invisible in the trace.

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Radim Krčmář" <rkrcmar@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: linux-mips@linux-mips.org
Cc: kvm@vger.kernel.org
2017-03-28 14:54:00 +01:00
..
00README.txt
callback.c MIPS: KVM: Convert EXPORT_SYMBOL to _GPL 2016-01-24 03:13:24 +01:00
commpage.c MIPS: kvm: Audit and remove any unnecessary uses of module.h 2016-10-05 01:31:20 +02:00
commpage.h
dyntrans.c KVM: MIPS/T&E: Use lockless GVA helpers for dyntrans 2017-02-03 15:21:12 +00:00
emulate.c KVM: MIPS/VZ: Support hardware guest timer 2017-03-28 14:53:59 +01:00
entry.c KVM: MIPS/Entry: Update entry code to support VZ 2017-03-28 14:53:51 +01:00
fpu.S MIPS: KVM: Fix fpu.S misassembly with r6 2016-07-05 16:09:11 +02:00
hypcall.c KVM: MIPS: Implement HYPCALL emulation 2017-03-28 14:53:33 +01:00
interrupt.c KVM: MIPS/T&E: Implement CP0_EBase register 2017-02-03 15:21:30 +00:00
interrupt.h KVM: MIPS: Implement VZ support 2017-03-28 14:53:54 +01:00
Kconfig KVM: MIPS: Add VZ support to build system 2017-03-28 14:53:54 +01:00
Makefile KVM: MIPS: Add VZ support to build system 2017-03-28 14:53:54 +01:00
mips.c KVM: MIPS/VZ: Trace guest mode changes 2017-03-28 14:54:00 +01:00
mmu.c KVM: MIPS: Implement VZ support 2017-03-28 14:53:54 +01:00
msa.S
stats.c MIPS: KVM: Clean up kvm_exit trace event 2016-06-14 11:16:23 +02:00
tlb.c KVM: MIPS: Implement VZ support 2017-03-28 14:53:54 +01:00
trace.h KVM: MIPS/VZ: Trace guest mode changes 2017-03-28 14:54:00 +01:00
trap_emul.c KVM: MIPS: Abstract guest CP0 register access for VZ 2017-03-28 14:53:50 +01:00
vz.c KVM: MIPS/VZ: Trace guest mode changes 2017-03-28 14:54:00 +01:00