diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2010-01-18 17:00:29 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2010-01-18 17:00:29 +0000 |
commit | e2ad9ff5a668df2737b6dd6918aac114de1bc135 (patch) | |
tree | 3ecf18d8e899eefdcf6a63da79531a9fb86ee440 /sys/arch | |
parent | df30a177444fe06be6762de755a15506697c2e68 (diff) |
dosoftint() being invoked at IPL_SOFTINT, don't bother checking the ipl before
grabbing the kernel lock.
Diffstat (limited to 'sys/arch')
-rw-r--r-- | sys/arch/mips64/mips64/softintr.c | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/sys/arch/mips64/mips64/softintr.c b/sys/arch/mips64/mips64/softintr.c index 95ced828145..0ad480f8b0d 100644 --- a/sys/arch/mips64/mips64/softintr.c +++ b/sys/arch/mips64/mips64/softintr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: softintr.c,v 1.10 2009/12/28 06:55:27 syuu Exp $ */ +/* $OpenBSD: softintr.c,v 1.11 2010/01/18 17:00:28 miod Exp $ */ /* $NetBSD: softintr.c,v 1.2 2003/07/15 00:24:39 lukem Exp $ */ /* @@ -207,12 +207,10 @@ dosoftint() #ifdef MULTIPROCESSOR u_int32_t sr; - if (ci->ci_ipl < IPL_SCHED) { - /* Enable interrupts */ - sr = getsr(); - ENABLEIPI(); - __mp_lock(&kernel_lock); - } + /* Enable interrupts */ + sr = getsr(); + ENABLEIPI(); + __mp_lock(&kernel_lock); #endif while ((sir = ci->ci_softpending) != 0) { @@ -226,9 +224,7 @@ dosoftint() } #ifdef MULTIPROCESSOR - if (ci->ci_ipl < IPL_SCHED) { - __mp_unlock(&kernel_lock); - setsr(sr); - } + __mp_unlock(&kernel_lock); + setsr(sr); #endif } |