diff options
author | kib <kib@FreeBSD.org> | 2016-08-15 21:33:20 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2016-08-15 21:33:20 +0000 |
commit | 408eededdb2bb7077a33012ddbd6270510245b89 (patch) | |
tree | aab983f61a25cca07298ad57e075b24c546692cc /sys/kern/kern_exit.c | |
parent | e4842c451d2fcb20d4e7734a423b4dda17c5e79b (diff) | |
download | FreeBSD-src-408eededdb2bb7077a33012ddbd6270510245b89.zip FreeBSD-src-408eededdb2bb7077a33012ddbd6270510245b89.tar.gz |
MFC r303423:
Force SIGSTOP to be the first signal reported after the attach.
Diffstat (limited to 'sys/kern/kern_exit.c')
-rw-r--r-- | sys/kern/kern_exit.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c index 3b7b9da..125f210 100644 --- a/sys/kern/kern_exit.c +++ b/sys/kern/kern_exit.c @@ -476,9 +476,12 @@ exit1(struct thread *td, int rval, int signo) */ clear_orphan(q); q->p_flag &= ~(P_TRACED | P_STOPPED_TRACE); + q->p_flag2 &= ~P2_PTRACE_FSTP; q->p_ptevents = 0; - FOREACH_THREAD_IN_PROC(q, tdt) - tdt->td_dbgflags &= ~TDB_SUSPEND; + FOREACH_THREAD_IN_PROC(q, tdt) { + tdt->td_dbgflags &= ~(TDB_SUSPEND | TDB_XSIG | + TDB_FSTP); + } kern_psignal(q, SIGKILL); } PROC_UNLOCK(q); |