summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorOleg Nesterov <oleg@tv-sign.ru>2008-04-30 09:53:14 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-30 17:29:38 +0200
commit33e9fc7d01269737cd5a3b6de1db9d0e796ab708 (patch)
tree36084d425e4d39ea06acff6f12164f257d0a102c /kernel
parentptrace: __ptrace_unlink: use the ptrace_reparented() helper (diff)
downloadlinux-33e9fc7d01269737cd5a3b6de1db9d0e796ab708.tar.xz
linux-33e9fc7d01269737cd5a3b6de1db9d0e796ab708.zip
ptrace: ptrace_attach: use send_sig_info() instead force_sig_specific()
Nobody can block/ignore SIGSTOP, no need to use force_sig_specific() in ptrace_attach. Use the "regular" send_sig_info(). With this patch stracing of /sbin/init doesn't clear its SIGNAL_UNKILLABLE, but not that this makes ptracing of init safe. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Cc: Roland McGrath <roland@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/ptrace.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/kernel/ptrace.c b/kernel/ptrace.c
index ce66d66881fd..5f8d452e8111 100644
--- a/kernel/ptrace.c
+++ b/kernel/ptrace.c
@@ -208,8 +208,7 @@ repeat:
__ptrace_link(task, current);
- force_sig_specific(SIGSTOP, task);
-
+ send_sig_info(SIGSTOP, SEND_SIG_FORCED, task);
bad:
write_unlock_irqrestore(&tasklist_lock, flags);
task_unlock(task);