Hello.
utrace patches for 3.1 kernel. Untested, will try to do some tests
tomorrow.
I do not want to spam you all and the lists, please look at
git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc.git utrace-3.1
Oleg Nesterov (29):
utrace: add utrace_init_task/utrace_free_task calls
tracehooks: add utrace hooks
tracehooks: reintroduce tracehook_consider_fatal_signal()
add utrace hooks into sig_ignored() and recalc_sigpending()
restore the EXEC/EXIT/CLONE utrace hooks
utrace: utrace_report_death() can use task_utrace_struct()
restore the DEATH/REAP utrace hooks
utrace: remove jobctl bits
ptrace: take ->siglock around s/TRACED/RUNNING/
introduce wake_up_quiescent()
introduce ptrace_signal_wake_up()
wait_task_inactive: treat task->state and match_state as bitmasks
introduce TASK_UTRACED state
utrace: use TASK_UTRACED instead of TASK_TRACED
reintroduce tracehook_finish_jctl() as utrace_end_stop()
teach wake_up_quiescent() to do "selective" wake_up
ptrace_stop: do not assume the task is running after wake_up_quiescent()
get_signal_to_deliver: restore/restructure utrace/ptrace signal reporting
utrace_get_signal: s/JOBCTL_STOP_PENDING/JOBCTL_PENDING_MASK/
introduce ptrace_set_syscall_trace()
introduce PT_SYSCALL_TRACE flag
utrace: don't clear TIF_SYSCALL_TRACE if it is needed by ptrace
introduce task_utrace_lock/task_utrace_unlock
teach ptrace_set_syscall_trace() to play well with utrace
introduce PT_SINGLE_STEP and PT_SINGLE_BLOCK
utrace: finish_resume_report: don't do user_xxx_step() if ptrace_wants_step()
ptrace: shift user_*_step() from ptrace_resume() to ptrace_stop()
ptrace_disable: no need to disable stepping
ptrace_report_syscall: check TIF_SYSCALL_EMU
Roland McGrath (1):
utrace core
Documentation/DocBook/Makefile | 2 +-
Documentation/DocBook/utrace.tmpl | 589 +++++++++
arch/s390/kernel/traps.c | 4 +-
arch/x86/kernel/ptrace.c | 1 -
fs/exec.c | 5 +-
fs/proc/array.c | 14 +-
include/linux/ptrace.h | 7 +
include/linux/sched.h | 25 +-
include/linux/signal.h | 2 +
include/linux/tracehook.h | 53 +-
include/linux/utrace.h | 773 ++++++++++++
init/Kconfig | 9 +
kernel/Makefile | 1 +
kernel/exit.c | 5 +
kernel/fork.c | 9 +
kernel/ptrace.c | 57 +-
kernel/sched.c | 2 +-
kernel/signal.c | 97 ++-
kernel/utrace.c | 2461 +++++++++++++++++++++++++++++++++++++
19 files changed, 4062 insertions(+), 54 deletions(-)
create mode 100644 Documentation/DocBook/utrace.tmpl
create mode 100644 include/linux/utrace.h
create mode 100644 kernel/utrace.c