summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2009-11-08 21:05:19 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2009-11-08 21:05:19 +0000
commit2783b9e7a388c4dd94479d27f871f1d3af90d142 (patch)
tree79925a0368ae04afd06b2c7818abb4cb2b584df1
parent4f6870372d51e99293280449d6a8e6421a1040e9 (diff)
Move KERNEL_LOCK/UNLOCK dance into softintr_dispatch().
ok miod@, dms@
-rw-r--r--sys/arch/macppc/dev/openpic.c8
-rw-r--r--sys/arch/powerpc/powerpc/softintr.c4
2 files changed, 4 insertions, 8 deletions
diff --git a/sys/arch/macppc/dev/openpic.c b/sys/arch/macppc/dev/openpic.c
index 2fc2070031c..7f64854ad01 100644
--- a/sys/arch/macppc/dev/openpic.c
+++ b/sys/arch/macppc/dev/openpic.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: openpic.c,v 1.58 2009/10/01 20:19:18 kettenis Exp $ */
+/* $OpenBSD: openpic.c,v 1.59 2009/11/08 21:05:18 kettenis Exp $ */
/*-
* Copyright (c) 1995 Per Fogelstrom
@@ -536,9 +536,7 @@ openpic_do_pending_softint(int pcpl)
ci->ci_ipending &= ~SINT_CLOCK;
ci->ci_cpl = SINT_CLOCK|SINT_NET|SINT_TTY;
ppc_intr_enable(1);
- KERNEL_LOCK();
softintr_dispatch(SI_SOFTCLOCK);
- KERNEL_UNLOCK();
ppc_intr_disable();
continue;
}
@@ -546,9 +544,7 @@ openpic_do_pending_softint(int pcpl)
ci->ci_ipending &= ~SINT_NET;
ci->ci_cpl = SINT_NET|SINT_TTY;
ppc_intr_enable(1);
- KERNEL_LOCK();
softintr_dispatch(SI_SOFTNET);
- KERNEL_UNLOCK();
ppc_intr_disable();
continue;
}
@@ -556,9 +552,7 @@ openpic_do_pending_softint(int pcpl)
ci->ci_ipending &= ~SINT_TTY;
ci->ci_cpl = SINT_TTY;
ppc_intr_enable(1);
- KERNEL_LOCK();
softintr_dispatch(SI_SOFTTTY);
- KERNEL_UNLOCK();
ppc_intr_disable();
continue;
}
diff --git a/sys/arch/powerpc/powerpc/softintr.c b/sys/arch/powerpc/powerpc/softintr.c
index 79ddc5cd627..230ab75681f 100644
--- a/sys/arch/powerpc/powerpc/softintr.c
+++ b/sys/arch/powerpc/powerpc/softintr.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: softintr.c,v 1.1 2009/10/01 20:19:19 kettenis Exp $ */
+/* $OpenBSD: softintr.c,v 1.2 2009/11/08 21:05:18 kettenis Exp $ */
/* $NetBSD: softintr.c,v 1.2 2003/07/15 00:24:39 lukem Exp $ */
/*
@@ -100,7 +100,9 @@ softintr_dispatch(int si)
mtx_leave(&siq->siq_mtx);
+ KERNEL_LOCK();
(*sih->sih_func)(sih->sih_arg);
+ KERNEL_UNLOCK();
}
}