KVM: PPC: Read out syscall instruction on trap

We have a few traps where we cache the instruction that cause the trap
for analysis later on. Since we now need to be able to distinguish
between SC 0 and SC 1 system calls and the only way to find out which
is which is by looking at the instruction, we also read out the instruction
causing the system call.

Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
Alexander Graf 2011-08-08 16:11:36 +02:00 committed by Avi Kivity
parent 04fcc11bb5
commit 77e675ad82
1 changed files with 5 additions and 0 deletions

View File

@ -213,11 +213,16 @@ END_FTR_SECTION_IFSET(CPU_FTR_HVMODE)
beq ld_last_inst beq ld_last_inst
cmpwi r12, BOOK3S_INTERRUPT_PROGRAM cmpwi r12, BOOK3S_INTERRUPT_PROGRAM
beq ld_last_inst beq ld_last_inst
cmpwi r12, BOOK3S_INTERRUPT_SYSCALL
beq ld_last_prev_inst
cmpwi r12, BOOK3S_INTERRUPT_ALIGNMENT cmpwi r12, BOOK3S_INTERRUPT_ALIGNMENT
beq- ld_last_inst beq- ld_last_inst
b no_ld_last_inst b no_ld_last_inst
ld_last_prev_inst:
addi r3, r3, -4
ld_last_inst: ld_last_inst:
/* Save off the guest instruction we're at */ /* Save off the guest instruction we're at */