aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/subr_trap.c
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2011-01-25 10:59:21 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2011-01-25 10:59:21 +0000
commit6fa39a73278ed9cbaaaba1873e53db2c706d6029 (patch)
tree8bd4ca91acf483d0b07a7a1a8c354a245fa549b1 /sys/kern/subr_trap.c
parentf1d16bd8921680db8046eb765e51a15163f9dff1 (diff)
downloadsrc-6fa39a73278ed9cbaaaba1873e53db2c706d6029.tar.gz
src-6fa39a73278ed9cbaaaba1873e53db2c706d6029.zip
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
Notes
Notes: svn path=/head/; revision=217819
Diffstat (limited to 'sys/kern/subr_trap.c')
-rw-r--r--sys/kern/subr_trap.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/subr_trap.c b/sys/kern/subr_trap.c
index ac55cea3a114..bca71f58f422 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);
}
}