lkml.org 
[lkml]   [2010]   [Dec]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 04/16] ptrace: kill tracehook_notify_jctl()
    On Mon, Dec 20, 2010 at 03:59:56PM +0100, Oleg Nesterov wrote:
    > On 12/06, Tejun Heo wrote:
    > >
    > > tracehook_notify_jctl() aids in determining whether and what to report
    > > to the parent when a task is stopped or continued. The function also
    > > adds an extra requirement that siglock may be released across it,
    > > which is currently unused and quite difficult to satisfy in
    > > well-defined manner.
    >
    > OK. I agree, tracehook_notify_jctl() looks very unobvious, especially
    > because it is not really used currently.
    >
    > The patch looks correct, except
    >
    > > @@ -1853,21 +1850,19 @@ relock:
    > > if (unlikely(signal->flags & SIGNAL_CLD_MASK)) {
    > > int why;
    > >
    > > - if (signal->flags & SIGNAL_CLD_CONTINUED)
    > > + if (task_ptrace(current) ||
    > > + (signal->flags & SIGNAL_CLD_CONTINUED))
    > > why = CLD_CONTINUED;
    > > else
    > > why = CLD_STOPPED;
    >
    > Hmm, I can't understand this.
    >
    > task_ptrace() should not turn CLD_STOPPED in CLD_CONTINUED?
    >
    > Looking ahead, it _seems_ that the next patches keep this logic,
    > could you explain?

    That's the logic from tracehook_notify_jctl() or I think it is
    incorrectly. Yes, the latter. I got confused the two parameters. I
    thought tracehook_notify_jctl() always returned CLD_CONTINUED when
    traced. The @why is @notified and CLD_CONTINUED is @why. :-)

    I'll drop the above chunk. Thanks.

    --
    tejun


    \
     
     \ /
      Last update: 2010-12-21 18:03    [W:0.026 / U:64.528 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site