diff options
author | Niklas Hallqvist <niklas@cvs.openbsd.org> | 2004-06-13 21:49:30 +0000 |
---|---|---|
committer | Niklas Hallqvist <niklas@cvs.openbsd.org> | 2004-06-13 21:49:30 +0000 |
commit | 2dd254afa61a7c0cc5ae920b463d3d4266852804 (patch) | |
tree | 7adbebef3be24ba910fd83ee1ba09e1577ae21a8 /sys/kern/sys_generic.c | |
parent | 4d62e331dcde739b4067d712dd602c0927ce11b3 (diff) |
debranch SMP, have fun
Diffstat (limited to 'sys/kern/sys_generic.c')
-rw-r--r-- | sys/kern/sys_generic.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/kern/sys_generic.c b/sys/kern/sys_generic.c index a6fdd09c95e..c512b9a40dd 100644 --- a/sys/kern/sys_generic.c +++ b/sys/kern/sys_generic.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sys_generic.c,v 1.47 2003/12/10 23:10:08 millert Exp $ */ +/* $OpenBSD: sys_generic.c,v 1.48 2004/06/13 21:49:26 niklas Exp $ */ /* $NetBSD: sys_generic.c,v 1.24 1996/03/29 00:25:32 cgd Exp $ */ /* @@ -55,6 +55,7 @@ #ifdef KTRACE #include <sys/ktrace.h> #endif +#include <sys/sched.h> #include <sys/mount.h> #include <sys/syscallargs.h> @@ -852,7 +853,7 @@ selwakeup(sip) p = pfind(sip->si_selpid); sip->si_selpid = 0; if (p != NULL) { - s = splhigh(); + SCHED_LOCK(s); if (p->p_wchan == (caddr_t)&selwait) { if (p->p_stat == SSLEEP) setrunnable(p); @@ -860,7 +861,7 @@ selwakeup(sip) unsleep(p); } else if (p->p_flag & P_SELECT) p->p_flag &= ~P_SELECT; - splx(s); + SCHED_UNLOCK(s); } } |