Lines Matching refs:td2

518 	struct thread *td2;
554 td2 = FIRST_THREAD_IN_PROC(p);
555 sched_exit_thread(td2, td);
716 weed_inhib(int mode, struct thread *td2, struct proc *p)
722 THREAD_LOCK_ASSERT(td2, MA_OWNED);
727 if (TD_IS_SUSPENDED(td2))
728 wakeup_swapper |= thread_unsuspend_one(td2, p, true);
729 if (TD_ON_SLEEPQ(td2) && (td2->td_flags & TDF_SINTR) != 0)
730 wakeup_swapper |= sleepq_abort(td2, EINTR);
734 if (TD_IS_SUSPENDED(td2) && (td2->td_flags & TDF_BOUNDARY) == 0)
735 wakeup_swapper |= thread_unsuspend_one(td2, p, false);
736 if (TD_ON_SLEEPQ(td2) && (td2->td_flags & TDF_SINTR) != 0)
737 wakeup_swapper |= sleepq_abort(td2, ERESTART);
748 if (TD_IS_SUSPENDED(td2) && (td2->td_flags & (TDF_BOUNDARY |
750 wakeup_swapper |= thread_unsuspend_one(td2, p, false);
751 if (TD_ON_SLEEPQ(td2) && (td2->td_flags & TDF_SINTR) != 0) {
752 if ((td2->td_flags & TDF_SBDRY) == 0) {
753 thread_suspend_one(td2);
754 td2->td_flags |= TDF_ALLPROCSUSP;
756 wakeup_swapper |= sleepq_abort(td2, ERESTART);
781 struct thread *td2;
827 FOREACH_THREAD_IN_PROC(p, td2) {
828 if (td2 == td)
830 thread_lock(td2);
831 td2->td_flags |= TDF_ASTPENDING | TDF_NEEDSUSPCHK;
832 if (TD_IS_INHIBITED(td2)) {
833 wakeup_swapper |= weed_inhib(mode, td2, p);
835 } else if (TD_IS_RUNNING(td2) && td != td2) {
836 forward_signal(td2);
839 thread_unlock(td2);
892 FOREACH_THREAD_IN_PROC(p, td2) {
893 if (td2 == td)
895 thread_lock(td2);
896 KASSERT((td2->td_flags & TDF_BOUNDARY) != 0,
897 ("td %p not on boundary", td2));
898 KASSERT(TD_IS_SUSPENDED(td2),
899 ("td %p is not suspended", td2));
900 thread_unlock(td2);