diff options
author | julian <julian@FreeBSD.org> | 2002-07-29 18:33:32 +0000 |
---|---|---|
committer | julian <julian@FreeBSD.org> | 2002-07-29 18:33:32 +0000 |
commit | 6216c4b163409794825c784e02317143975376f3 (patch) | |
tree | fb17cadef050bebf8077e451640f625b2317869b /sys/kern/kern_condvar.c | |
parent | 9f0ddc464e0c402f25ea8ae47e53ae9dba1c60c6 (diff) | |
download | FreeBSD-src-6216c4b163409794825c784e02317143975376f3.zip FreeBSD-src-6216c4b163409794825c784e02317143975376f3.tar.gz |
Create a new thread state to describe threads that would be ready to run
except for the fact tha they are presently swapped out. Also add a process
flag to indicate that the process has started the struggle to swap
back in. This will be needed for the case where multiple threads
start the swapin action top a collision. Also add code to stop
a process fropm being swapped out if one of the threads in this
process is actually off running on another CPU.. that might hurt...
Submitted by: Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp>
Diffstat (limited to 'sys/kern/kern_condvar.c')
-rw-r--r-- | sys/kern/kern_condvar.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/kern/kern_condvar.c b/sys/kern/kern_condvar.c index e2bbbb4..822a4c9 100644 --- a/sys/kern/kern_condvar.c +++ b/sys/kern/kern_condvar.c @@ -533,6 +533,7 @@ cv_wakeup(struct cv *cvp) setrunqueue(td); maybe_resched(td); } else { + td->td_state = TDS_SWAPPED; td->td_proc->p_sflag |= PS_SWAPINREQ; wakeup(&proc0); /* XXXKSE */ } |