summaryrefslogtreecommitdiff
path: root/sys/kern/sys_process.c
diff options
context:
space:
mode:
authorDavid Xu <davidxu@FreeBSD.org>2008-11-05 03:01:23 +0000
committerDavid Xu <davidxu@FreeBSD.org>2008-11-05 03:01:23 +0000
commit7b4a950a7df886f19bea7d2f57ef8f7ef81b7428 (patch)
tree50003b0f3882d55b6d31a3135664f3a2abd73c56 /sys/kern/sys_process.c
parentcef3930d7c33bf6e86b486fc0a5c0cd9742caf8a (diff)
Notes
Diffstat (limited to 'sys/kern/sys_process.c')
-rw-r--r--sys/kern/sys_process.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/sys_process.c b/sys/kern/sys_process.c
index c67af8c5459a..ceae8de8e904 100644
--- a/sys/kern/sys_process.c
+++ b/sys/kern/sys_process.c
@@ -795,8 +795,10 @@ kern_ptrace(struct thread *td, int req, pid_t pid, void *addr, int data)
* you should use PT_SUSPEND to suspend it before
* continuing process.
*/
+ PROC_SLOCK(p);
p->p_flag &= ~(P_STOPPED_TRACE|P_STOPPED_SIG|P_WAITED);
thread_unsuspend(p);
+ PROC_SUNLOCK(p);
} else {
if (data)
psignal(p, data);