LWN.net Logo

ptrace,signal: Improve ptrace and job control interaction

From:  Tejun Heo <tj@kernel.org>
To:  oleg@redhat.com, jan.kratochvil@redhat.com, vda.linux@googlemail.com
Subject:  [PATCHSET] ptrace,signal: Improve ptrace and job control interaction
Date:  Wed, 23 Mar 2011 11:05:46 +0100
Message-ID:  <1300874766-12941-1-git-send-email-tj@kernel.org>
Cc:  linux-kernel@vger.kernel.org, torvalds@linux-foundation.org, akpm@linux-foundation.org, indan@nul.nu, roland@hack.frob.com
Archive-link:  Article, Thread

Hello,

This is repost of the following two pending patchsets.

 [1] group stop / ptrace updates, take#2
 [2] ptrace,signal: Fix notifications to the real parent while ptraced

Combined these patches implement "P1. Always TASK_TRACED while
ptraced", "P2. Fix notifications to the real parent" and "P3. Keep
ptrace resume separate from and beneath jctl stop" of the ptrace job
control improvements proposal[3].

All patches have been reviewed and acked by Oleg and this will be the
last repost of these patches.  They're being committed to a stable git
tree (will eventually be managed by Oleg) and will be pulled into
linux-next once -rc1 is released.

 0001-signal-Fix-SIGCONT-notification-code.patch
 0002-ptrace-Remove-the-extra-wake_up_state-from-ptrace_de.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
 0011-ptrace-Collapse-ptrace_untrace-into-__ptrace_unlink.patch
 0012-ptrace-Always-put-ptracee-into-appropriate-execution.patch
 0013-job-control-Don-t-set-group_stop-exit_code-if-re-ent.patch
 0014-job-control-Small-reorganization-of-wait_consider_ta.patch
 0015-job-control-Fix-ptracer-wait-2-hang-and-explain-nota.patch
 0016-job-control-Allow-access-to-job-control-events-throu.patch
 0017-job-control-Add-for_ptrace-to-do_notify_parent_cldst.patch
 0018-job-control-Job-control-stop-notifications-should-al.patch
 0019-job-control-Notify-the-real-parent-of-job-control-ev.patch
 0020-job-control-Don-t-send-duplicate-job-control-stop-no.patch

0001-0010 are from the first patchset and unchanged.  0010-0020 are
from the second patchset.  0010 and 0011 are the additional ones
posted as 0.1 and 0.2.  0015, 0016 and 0019 are the updated version
per Oleg's reviews.  The rest remain unchanged.

The patches are on top of the current mainline (6447f55da) and is
available in the following git branch

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

and contains the following changes.

 fs/exec.c                 |    1 
 include/linux/sched.h     |   11 +
 include/linux/tracehook.h |   27 ---
 kernel/exit.c             |   84 +++++++++--
 kernel/ptrace.c           |  110 ++++++++++----
 kernel/signal.c           |  341 +++++++++++++++++++++++++++++++++++++---------
 6 files changed, 434 insertions(+), 140 deletions(-)

Thanks.

--
tejun

[1] http://thread.gmane.org/gmane.linux.kernel/1109224
[2] http://thread.gmane.org/gmane.linux.kernel/1110403
[3] http://thread.gmane.org/gmane.linux.kernel/1107045
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Copyright © 2011, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds