diff options
| -rw-r--r-- | arch/mips/kvm/kvm_mips_emul.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/mips/kvm/kvm_mips_emul.c b/arch/mips/kvm/kvm_mips_emul.c index 4b6274b47f33..e75ef8219caf 100644 --- a/arch/mips/kvm/kvm_mips_emul.c +++ b/arch/mips/kvm/kvm_mips_emul.c | |||
| @@ -1571,17 +1571,17 @@ kvm_mips_handle_ri(unsigned long cause, uint32_t *opc, | |||
| 1571 | arch->gprs[rt] = kvm_read_c0_guest_userlocal(cop0); | 1571 | arch->gprs[rt] = kvm_read_c0_guest_userlocal(cop0); |
| 1572 | #else | 1572 | #else |
| 1573 | /* UserLocal not implemented */ | 1573 | /* UserLocal not implemented */ |
| 1574 | er = kvm_mips_emulate_ri_exc(cause, opc, run, vcpu); | 1574 | er = EMULATE_FAIL; |
| 1575 | #endif | 1575 | #endif |
| 1576 | break; | 1576 | break; |
| 1577 | 1577 | ||
| 1578 | default: | 1578 | default: |
| 1579 | printk("RDHWR not supported\n"); | 1579 | kvm_debug("RDHWR %#x not supported @ %p\n", rd, opc); |
| 1580 | er = EMULATE_FAIL; | 1580 | er = EMULATE_FAIL; |
| 1581 | break; | 1581 | break; |
| 1582 | } | 1582 | } |
| 1583 | } else { | 1583 | } else { |
| 1584 | printk("Emulate RI not supported @ %p: %#x\n", opc, inst); | 1584 | kvm_debug("Emulate RI not supported @ %p: %#x\n", opc, inst); |
| 1585 | er = EMULATE_FAIL; | 1585 | er = EMULATE_FAIL; |
| 1586 | } | 1586 | } |
| 1587 | 1587 | ||
| @@ -1590,6 +1590,7 @@ kvm_mips_handle_ri(unsigned long cause, uint32_t *opc, | |||
| 1590 | */ | 1590 | */ |
| 1591 | if (er == EMULATE_FAIL) { | 1591 | if (er == EMULATE_FAIL) { |
| 1592 | vcpu->arch.pc = curr_pc; | 1592 | vcpu->arch.pc = curr_pc; |
| 1593 | er = kvm_mips_emulate_ri_exc(cause, opc, run, vcpu); | ||
| 1593 | } | 1594 | } |
| 1594 | return er; | 1595 | return er; |
| 1595 | } | 1596 | } |
