summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
authorArtur Grabowski <art@cvs.openbsd.org>2005-05-30 12:51:14 +0000
committerArtur Grabowski <art@cvs.openbsd.org>2005-05-30 12:51:14 +0000
commit2f1dc810c4a250489c4d71a333fdb9d084dfcda3 (patch)
treea415352aee29a604efb86e568a66a4cf025f7fa4 /sys/arch
parent79309614829726eb1a46913a7aba74b5a9399ad0 (diff)
Just use preempt(NULL) like every other architecture in this code path,
don't roll our own. ok miod@ pefo@
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/mips64/mips64/interrupt.c19
1 files changed, 4 insertions, 15 deletions
diff --git a/sys/arch/mips64/mips64/interrupt.c b/sys/arch/mips64/mips64/interrupt.c
index a8a748fd2de..bbd56eccfef 100644
--- a/sys/arch/mips64/mips64/interrupt.c
+++ b/sys/arch/mips64/mips64/interrupt.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: interrupt.c,v 1.13 2005/05/29 03:20:40 deraadt Exp $ */
+/* $OpenBSD: interrupt.c,v 1.14 2005/05/30 12:51:13 art Exp $ */
/*
* Copyright (c) 2001-2004 Opsycon AB (www.opsycon.se / www.opsycon.com)
@@ -282,21 +282,10 @@ softintr()
ADDUPROF(p);
}
if (want_resched) {
- int s;
-
- /*
- * Since we are curproc, clock will normally just change
- * our priority without moving us from one queue to another
- * (since the running process is not on a queue.)
- * If that happened after we put ourselves on the run queue
- * but before we switched, we might not be on the queue
- * indicated by our priority.
+ /*
+ * We're being preempted.
*/
- s = splstatclock();
- setrunqueue(p);
- p->p_stats->p_ru.ru_nivcsw++;
- mi_switch();
- splx(s);
+ preempt(NULL);
while ((sig = CURSIG(p)) != 0)
postsig(sig);
}