diff options
author | kib <kib@FreeBSD.org> | 2011-01-25 10:59:21 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2011-01-25 10:59:21 +0000 |
commit | 72112368cfef3fb8d740abf0ef9b4024db441d68 (patch) | |
tree | 8bd4ca91acf483d0b07a7a1a8c354a245fa549b1 /sys/kern/subr_trap.c | |
parent | ab3c67159918d2800cfde8043251533028ab1e5a (diff) | |
download | FreeBSD-src-72112368cfef3fb8d740abf0ef9b4024db441d68.zip FreeBSD-src-72112368cfef3fb8d740abf0ef9b4024db441d68.tar.gz |
Allow debugger to specify that children of the traced process should be
automatically traced. Extend the ptrace(PL_LWPINFO) to report that child
just forked.
Reviewed by: davidxu, jhb
MFC after: 2 weeks
Diffstat (limited to 'sys/kern/subr_trap.c')
-rw-r--r-- | sys/kern/subr_trap.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/subr_trap.c b/sys/kern/subr_trap.c index ac55cea..bca71f5 100644 --- a/sys/kern/subr_trap.c +++ b/sys/kern/subr_trap.c @@ -392,9 +392,9 @@ syscallret(struct thread *td, int error, struct syscall_args *sa __unused) */ STOPEVENT(p, S_SCX, sa->code); PTRACESTOP_SC(p, td, S_PT_SCX); - if (traced || (td->td_dbgflags & TDB_EXEC) != 0) { + if (traced || (td->td_dbgflags & (TDB_EXEC | TDB_FORK)) != 0) { PROC_LOCK(p); - td->td_dbgflags &= ~(TDB_SCX | TDB_EXEC); + td->td_dbgflags &= ~(TDB_SCX | TDB_EXEC | TDB_FORK); PROC_UNLOCK(p); } } |