diff options
author | davidxu <davidxu@FreeBSD.org> | 2008-10-23 07:55:38 +0000 |
---|---|---|
committer | davidxu <davidxu@FreeBSD.org> | 2008-10-23 07:55:38 +0000 |
commit | 2062caca2494bf113adefa9ca01f9f5fb24ad7b9 (patch) | |
tree | 0f85351fa5ffde7cf121d1e0f3f5e83ff415f868 /sys/kern/sys_process.c | |
parent | b20c19bc667aef513fa9f5449df2d4a833e42d3d (diff) | |
download | FreeBSD-src-2062caca2494bf113adefa9ca01f9f5fb24ad7b9.zip FreeBSD-src-2062caca2494bf113adefa9ca01f9f5fb24ad7b9.tar.gz |
Actually, for signal and thread suspension, extra process spin lock is
unnecessary, the normal process lock and thread lock are enough. The
spin lock is still needed for process and thread exiting to mimic
single sched_lock.
Diffstat (limited to 'sys/kern/sys_process.c')
-rw-r--r-- | sys/kern/sys_process.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/sys/kern/sys_process.c b/sys/kern/sys_process.c index ceae8de..c67af8c 100644 --- a/sys/kern/sys_process.c +++ b/sys/kern/sys_process.c @@ -795,10 +795,8 @@ 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); |