diff options
author | Renato Botelho <renato@netgate.com> | 2015-10-07 18:07:27 -0300 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2015-10-07 18:07:27 -0300 |
commit | 945ed01c4bae06169f63978e43029c04d4abd731 (patch) | |
tree | 5cd3ae372187bd25416aeec230f31242c3729be7 /sys/kern/subr_syscall.c | |
parent | 8aae621ec1e941b8f27411df1bace42778e61b99 (diff) | |
parent | 36b47c3278c31b909b37616c58ccf4f148a9e47c (diff) | |
download | FreeBSD-src-945ed01c4bae06169f63978e43029c04d4abd731.zip FreeBSD-src-945ed01c4bae06169f63978e43029c04d4abd731.tar.gz |
Merge branch 'stable/10' into devel
Diffstat (limited to 'sys/kern/subr_syscall.c')
-rw-r--r-- | sys/kern/subr_syscall.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/kern/subr_syscall.c b/sys/kern/subr_syscall.c index 9eeadb4..925d732 100644 --- a/sys/kern/subr_syscall.c +++ b/sys/kern/subr_syscall.c @@ -64,14 +64,14 @@ syscallenter(struct thread *td, struct syscall_args *sa) td->td_pticks = 0; if (td->td_ucred != p->p_ucred) cred_update_thread(td); - if (p->p_flag & P_TRACED) { - traced = 1; + traced = (p->p_flag & P_TRACED) != 0; + if (traced || td->td_dbgflags & TDB_USERWR) { PROC_LOCK(p); td->td_dbgflags &= ~TDB_USERWR; - td->td_dbgflags |= TDB_SCE; + if (traced) + td->td_dbgflags |= TDB_SCE; PROC_UNLOCK(p); - } else - traced = 0; + } error = (p->p_sysent->sv_fetch_syscall_args)(td, sa); #ifdef KTRACE if (KTRPOINT(td, KTR_SYSCALL)) |