Re: [patch] ptrace-fix-2.5.33-A1

From: Daniel Jacobowitz (dan@debian.org)
Date: Thu Sep 05 2002 - 17:15:58 EST


On Fri, Sep 06, 2002 at 12:09:51AM +0200, Ingo Molnar wrote:
>
> On Thu, 5 Sep 2002, Daniel Jacobowitz wrote:
>
> > There's definitely still something wrong... let me just run through my
> > understanding of these lists, to make sure we're on the same page.
> >
> > tsk->children: tsk's children, which are either untraced or traced by
> > tsk. They have p->parent == p->real_parent == tsk.
> > Chained in p->sibling.
>
> no - the way i wrote it originally was that only untraced children should
> be on the tsk->children list. Traced tasks will be on the debugger's
> ->children list, plus will be on the real parent's ->ptrace_children list.

Right - let me rephrase. Tasks which are either:
  - untraced, normal
  - traced, but traced _by their parent_
are on the sibling/children list.

Tasks which are traced by some not-my-parent process go on the
ptrace_children list. So I think we agree.

> > tsk->ptrace_children: tsk's children, which are traced by some other
> > process. They have p->real_parent == tsk and p->parent != tsk.
> > Chained in p->ptrace_list.
>
> yes. This means that the sum of the two lists gives the real, total set of
> children.
>
> this splitup of the lists makes it possible for the debugger to do a wait4
> that will get events from the debugged task, and for the debugged task to
> also be available to the real parent.

Great. I'm not exactly sure on how this works right now: sys_wait4
only iterates over ->children, with the exception of the special code
in TASK_ZOMBIE. I'm not quite sure when events from a traced process
get to the normal parent of that process, or when they're supposed to.

> is this really what we want?
>
> (note that the meaning of the lists is not necesserily cleanly expressed
> via the code, all deviations are most likely bugs.)

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer
-
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/



This archive was generated by hypermail 2b29 : Sat Sep 07 2002 - 22:00:27 EST