]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/mips/kvm/interrupt.c
Merge tag 'ktest-v4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt...
[karo-tx-linux.git] / arch / mips / kvm / interrupt.c
index ad28dac6b7e9557346813a02f4699cbcdd5b6d74..aa0a1a00faf650c5804eb3e9ff5445929d3d5582 100644 (file)
@@ -11,7 +11,6 @@
 
 #include <linux/errno.h>
 #include <linux/err.h>
-#include <linux/module.h>
 #include <linux/vmalloc.h>
 #include <linux/fs.h>
 #include <linux/bootmem.h>
@@ -184,10 +183,11 @@ int kvm_mips_irq_deliver_cb(struct kvm_vcpu *vcpu, unsigned int priority,
                                          (exccode << CAUSEB_EXCCODE));
 
                /* XXXSL Set PC to the interrupt exception entry point */
+               arch->pc = kvm_mips_guest_exception_base(vcpu);
                if (kvm_read_c0_guest_cause(cop0) & CAUSEF_IV)
-                       arch->pc = KVM_GUEST_KSEG0 + 0x200;
+                       arch->pc += 0x200;
                else
-                       arch->pc = KVM_GUEST_KSEG0 + 0x180;
+                       arch->pc += 0x180;
 
                clear_bit(priority, &vcpu->arch.pending_exceptions);
        }