Lines 2576-2582
ptracestop(struct thread *td, int sig, ksiginfo_t *si)
Link Here
|
2576 |
p->p_xthread == NULL)) { |
2576 |
p->p_xthread == NULL)) { |
2577 |
p->p_xsig = sig; |
2577 |
p->p_xsig = sig; |
2578 |
p->p_xthread = td; |
2578 |
p->p_xthread = td; |
2579 |
td->td_dbgflags &= ~TDB_FSTP; |
2579 |
|
|
|
2580 |
/* |
2581 |
* If we are on sleepqueue already, |
2582 |
* let sleepqueue code decide if it |
2583 |
* needs to go sleep after attach. |
2584 |
*/ |
2585 |
if (td->td_wchan == NULL) |
2586 |
td->td_dbgflags &= ~TDB_FSTP; |
2587 |
|
2580 |
p->p_flag2 &= ~P2_PTRACE_FSTP; |
2588 |
p->p_flag2 &= ~P2_PTRACE_FSTP; |
2581 |
p->p_flag |= P_STOPPED_SIG | P_STOPPED_TRACE; |
2589 |
p->p_flag |= P_STOPPED_SIG | P_STOPPED_TRACE; |
2582 |
sig_suspend_threads(td, p, 0); |
2590 |
sig_suspend_threads(td, p, 0); |