powerpc/64s: remove KVM SKIP test from instruction breakpoint handler
The code being executed in KVM_GUEST_MODE_SKIP is hypervisor code with MSR[IR]=0, so the faults of concern are the d-side ones caused by access to guest context by the hypervisor. Instruction breakpoint interrupts are not a concern here. It's unlikely any good would come of causing breaks in this code, but skipping the instruction that caused it won't help matters (e.g., skip the mtmsr that sets MSR[DR]=0 or clears KVM_GUEST_MODE_SKIP). [Paul notes: "the 0x1300 interrupt was dropped from the architecture a long time ago and is not generated by P7, P8, P9 or P10." So add a comment about this in the handler code while we're here. ] Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Reviewed-by: Daniel Axtens <dja@axtens.net> Reviewed-by: Fabiano Rosas <farosas@linux.ibm.com> Acked-by: Paul Mackerras <paulus@ozlabs.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20210412014845.1517916-11-npiggin@gmail.com
This commit is contained in:
parent
5eee837182
commit
da487a5d1b
@ -2549,11 +2549,16 @@ EXC_REAL_NONE(0x1200, 0x100)
|
||||
EXC_VIRT_NONE(0x5200, 0x100)
|
||||
#endif
|
||||
|
||||
|
||||
/**
|
||||
* Interrupt 0x1300 - Instruction Address Breakpoint Interrupt.
|
||||
* This has been removed from the ISA before 2.01, which is the earliest
|
||||
* 64-bit BookS ISA supported, however the G5 / 970 implements this
|
||||
* interrupt with a non-architected feature available through the support
|
||||
* processor interface.
|
||||
*/
|
||||
INT_DEFINE_BEGIN(instruction_breakpoint)
|
||||
IVEC=0x1300
|
||||
#ifdef CONFIG_KVM_BOOK3S_PR_POSSIBLE
|
||||
IKVM_SKIP=1
|
||||
IKVM_REAL=1
|
||||
#endif
|
||||
INT_DEFINE_END(instruction_breakpoint)
|
||||
|
Loading…
Reference in New Issue
Block a user