summaryrefslogtreecommitdiff
path: root/sys/kern/sys_generic.c
diff options
context:
space:
mode:
authorJulian Elischer <julian@FreeBSD.org>2002-09-11 08:13:56 +0000
committerJulian Elischer <julian@FreeBSD.org>2002-09-11 08:13:56 +0000
commit71fad9fdeefd5d874768802125f98ea6450cfa5c (patch)
tree10514ece7d621a24c034e4c778c793b9ea2d9675 /sys/kern/sys_generic.c
parent527eee2d404ad5415be0b17e0403d29f3ea924c3 (diff)
Notes
Diffstat (limited to 'sys/kern/sys_generic.c')
-rw-r--r--sys/kern/sys_generic.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/kern/sys_generic.c b/sys/kern/sys_generic.c
index ec9958dd08d1..4c45ef77a9d4 100644
--- a/sys/kern/sys_generic.c
+++ b/sys/kern/sys_generic.c
@@ -1206,10 +1206,9 @@ selwakeup(sip)
sip->si_thread = NULL;
mtx_lock_spin(&sched_lock);
if (td->td_wchan == &selwait) {
- if (td->td_state == TDS_SLP)
- setrunnable(td);
- else
- cv_waitq_remove(td);
+ cv_waitq_remove(td);
+ TD_CLR_SLEEPING(td);
+ setrunnable(td);
} else
td->td_flags &= ~TDF_SELECT;
mtx_unlock_spin(&sched_lock);