summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2015-04-28 18:39:14 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2015-04-28 18:39:14 +0000
commit201f221246b34b2915fb972bf0141ff29a12e54f (patch)
treef2c4a0cf1df5f2eb3d34485abc7bae0cd5c2975b
parente716351eb0e9bfcb44438ae06a8ad747ef3e0dec (diff)
Don't grab the kernel lock for clock interrupts. The way we use mutexes
these days is incompatible with that practice and leads to deadlocks. ok jsing@
-rw-r--r--sys/arch/hppa/hppa/intr.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/arch/hppa/hppa/intr.c b/sys/arch/hppa/hppa/intr.c
index 109c2a0067c..5c0ee090d52 100644
--- a/sys/arch/hppa/hppa/intr.c
+++ b/sys/arch/hppa/hppa/intr.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: intr.c,v 1.46 2015/02/11 01:55:40 dlg Exp $ */
+/* $OpenBSD: intr.c,v 1.47 2015/04/28 18:39:13 kettenis Exp $ */
/*
* Copyright (c) 2002-2004 Michael Shalayeff
@@ -274,7 +274,7 @@ cpu_intr(void *v)
mtctl(frame->tf_eiem, CR_EIEM);
#ifdef MULTIPROCESSOR
- if (pri < IPL_IPI && s < IPL_SCHED)
+ if (pri < IPL_CLOCK)
__mp_lock(&kernel_lock);
#endif
@@ -296,7 +296,7 @@ cpu_intr(void *v)
#endif
#ifdef MULTIPROCESSOR
- if (pri < IPL_IPI && s < IPL_SCHED)
+ if (pri < IPL_CLOCK)
__mp_unlock(&kernel_lock);
#endif
mtctl(0, CR_EIEM);