diff options
author | Mark Johnston <markj@FreeBSD.org> | 2017-05-25 01:09:45 +0000 |
---|---|---|
committer | Mark Johnston <markj@FreeBSD.org> | 2017-05-25 01:09:45 +0000 |
commit | 0c1064a752d96bdf56528c1401445da6ac1c95b5 (patch) | |
tree | cb54beace35faa76f17367a87225964b6fd1a6f4 | |
parent | 467c73bb3933452fda8327c18ec314246b5fce8b (diff) |
Notes
-rw-r--r-- | sys/kern/kern_sig.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index f9c44b4aa313..6677d69b0922 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -2495,6 +2495,7 @@ sig_suspend_threads(struct thread *td, struct proc *p, int sending) PROC_LOCK_ASSERT(p, MA_OWNED); PROC_SLOCK_ASSERT(p, MA_OWNED); + MPASS(sending || td == curthread); wakeup_swapper = 0; FOREACH_THREAD_IN_PROC(p, td2) { @@ -2511,10 +2512,9 @@ sig_suspend_threads(struct thread *td, struct proc *p, int sending) */ KASSERT(!TD_IS_SUSPENDED(td2), ("thread with deferred stops suspended")); - if (TD_SBDRY_INTR(td2) && sending) { + if (TD_SBDRY_INTR(td2)) wakeup_swapper |= sleepq_abort(td2, TD_SBDRY_ERRNO(td2)); - } } else if (!TD_IS_SUSPENDED(td2)) { thread_suspend_one(td2); } |