lkml.org 
[lkml]   [2011]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCHSET] ptrace,signal: group stop / ptrace updates
    Date
    Hello,

    This is another posting of ptrace and group stop interaction update.
    The last posting was split over two patchsets[1][2]. Changes are,

    * Rebased on top of v2.6.38-rc2

    * 0010-ptrace-clean-transitions-between-TASK_STOPPED-and-TR.patch
    updated as per Oleg's comments - the TRACED/TRAPPING race condition
    closed and trapping clearing separated out from group_stop clearing.

    0001-signal-fix-SIGCONT-notification-code.patch
    0002-ptrace-remove-the-extra-wake_up_process-from-ptrace_.patch
    0003-signal-remove-superflous-try_to_freeze-loop-in-do_si.patch
    0004-ptrace-kill-tracehook_notify_jctl.patch
    0005-ptrace-add-why-to-ptrace_stop.patch
    0006-signal-fix-premature-completion-of-group-stop-when-i.patch
    0007-signal-use-GROUP_STOP_PENDING-to-stop-once-for-a-sin.patch
    0008-ptrace-participate-in-group-stop-from-ptrace_stop-if.patch
    0009-ptrace-make-do_signal_stop-use-ptrace_stop-if-the-ta.patch
    0010-ptrace-clean-transitions-between-TASK_STOPPED-and-TR.patch

    0001-0004 are cleanup/bugfix patches. 0005-0010 improve group stop
    handling.

    Discussions are still on-going on the following points.

    1. Removal of spurious wake_up_process() by 0002 may not be safe[3].

    2. STOPPED -> RUNNING -> TRACED transition window may be visible to
    tasks which are not the tracer[4]. Tracee always entering TRACED
    also causes one ptrace test case to fail[5].

    3. After immediately re-attaching to a detached task in stopped state,
    WNOHANG wait(2) may fail.

    This patchset does change ptrace behavior but the changed aspects are
    somewhere between awkward and outright buggy before the changes and
    the changes are visible only through very convoluted use cases.
    Regardless of future directions from here, I don't think the patches
    posted in this patchset would be a problem.

    The patchset is available in the following git tree.

    git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git ptrace-review

    Thank you.

    fs/exec.c | 1
    include/linux/sched.h | 11 ++
    include/linux/tracehook.h | 27 -----
    kernel/ptrace.c | 51 ++++++++--
    kernel/signal.c | 226 ++++++++++++++++++++++++++++++++++------------
    5 files changed, 225 insertions(+), 91 deletions(-)

    --
    tejun

    [1] http://thread.gmane.org/gmane.linux.kernel/1079975
    [2] http://thread.gmane.org/gmane.linux.kernel/1080700
    [3] http://thread.gmane.org/gmane.linux.kernel/1079975/focus=1088490
    [4] http://thread.gmane.org/gmane.linux.kernel/1080700/focus=1088538
    [5] http://thread.gmane.org/gmane.linux.kernel/1080700/focus=1093056


    \
     
     \ /
      Last update: 2011-01-28 16:11    [W:0.021 / U:0.088 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site