summaryrefslogtreecommitdiffstats
path: root/sys/kern/subr_sleepqueue.c
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2013-03-18 17:23:58 +0000
committerjhb <jhb@FreeBSD.org>2013-03-18 17:23:58 +0000
commit8b099870ed9610eb7624539e21eda50303937968 (patch)
treebc3da40472cd5518cd47bfef78827d9214361be6 /sys/kern/subr_sleepqueue.c
parent5f339017dc07b801ac6a4adcf667eb4fdcb0d408 (diff)
downloadFreeBSD-src-8b099870ed9610eb7624539e21eda50303937968.zip
FreeBSD-src-8b099870ed9610eb7624539e21eda50303937968.tar.gz
Partially revert r195702. Deferring stops is now implemented via a set of
calls to toggle TDF_SBDRY rather than passing PBDRY to individual sleep calls. - Remove the stop_allowed parameters from cursig() and issignal(). issignal() checks TDF_SBDRY directly. - Remove the PBDRY and SLEEPQ_STOP_ON_BDRY flags.
Diffstat (limited to 'sys/kern/subr_sleepqueue.c')
-rw-r--r--sys/kern/subr_sleepqueue.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/kern/subr_sleepqueue.c b/sys/kern/subr_sleepqueue.c
index 1e1e263..92b5147 100644
--- a/sys/kern/subr_sleepqueue.c
+++ b/sys/kern/subr_sleepqueue.c
@@ -405,7 +405,7 @@ sleepq_catch_signals(void *wchan, int pri)
struct thread *td;
struct proc *p;
struct sigacts *ps;
- int sig, ret, stop_allowed;
+ int sig, ret;
td = curthread;
p = curproc;
@@ -429,8 +429,6 @@ sleepq_catch_signals(void *wchan, int pri)
sleepq_switch(wchan, pri);
return (0);
}
- stop_allowed = (td->td_flags & TDF_SBDRY) ? SIG_STOP_NOT_ALLOWED :
- SIG_STOP_ALLOWED;
thread_unlock(td);
mtx_unlock_spin(&sc->sc_lock);
CTR3(KTR_PROC, "sleepq catching signals: thread %p (pid %ld, %s)",
@@ -438,7 +436,7 @@ sleepq_catch_signals(void *wchan, int pri)
PROC_LOCK(p);
ps = p->p_sigacts;
mtx_lock(&ps->ps_mtx);
- sig = cursig(td, stop_allowed);
+ sig = cursig(td);
if (sig == 0) {
mtx_unlock(&ps->ps_mtx);
ret = thread_suspend_check(1);
OpenPOWER on IntegriCloud