summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/mips64/mips64/trap.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/sys/arch/mips64/mips64/trap.c b/sys/arch/mips64/mips64/trap.c
index 8e0733c2ecd..fd1de398ecb 100644
--- a/sys/arch/mips64/mips64/trap.c
+++ b/sys/arch/mips64/mips64/trap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: trap.c,v 1.54 2010/01/01 15:04:00 miod Exp $ */
+/* $OpenBSD: trap.c,v 1.55 2010/01/07 07:36:51 syuu Exp $ */
/*
* Copyright (c) 1988 University of Utah.
@@ -209,12 +209,14 @@ trap(trapframe)
}
/*
- * Enable hardware interrupts if they were on before the trap.
+ * Enable hardware interrupts if they were on before the trap;
+ * enable IPI interrupts only otherwise.
*/
- if (trapframe->sr & SR_INT_ENAB) {
- if (type != T_BREAK) {
+ if (type != T_BREAK) {
+ if (ISSET(trapframe->sr, SR_INT_ENAB))
enableintr();
- }
+ else
+ ENABLEIPI();
}
switch (type) {