ptrace: introduce signal_wake_up_state() and ptrace_signal_wake_up()
authorOleg Nesterov <oleg@redhat.com>
Mon, 21 Jan 2013 19:47:41 +0000 (20:47 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 20 Feb 2013 03:15:29 +0000 (03:15 +0000)
commitbb24eda9eee7a1cc865bb10dbb89edf7c1f5cdc7
tree46c5fb64621fe3e810c5b183ecddaeb99b01dcc9
parent667958738244e5be2cb1e05ab1f2a112c52e1c64
ptrace: introduce signal_wake_up_state() and ptrace_signal_wake_up()

commit 910ffdb18a6408e14febbb6e4b6840fd2c928c82 upstream.

Cleanup and preparation for the next change.

signal_wake_up(resume => true) is overused. None of ptrace/jctl callers
actually want to wakeup a TASK_WAKEKILL task, but they can't specify the
necessary mask.

Turn signal_wake_up() into signal_wake_up_state(state), reintroduce
signal_wake_up() as a trivial helper, and add ptrace_signal_wake_up()
which adds __TASK_TRACED.

This way ptrace_signal_wake_up() can work "inside" ptrace_request()
even if the tracee doesn't have the TASK_WAKEKILL bit set.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
include/linux/sched.h
kernel/ptrace.c
kernel/signal.c