[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070410133808.GA163@tv-sign.ru>
Date: Tue, 10 Apr 2007 17:38:08 +0400
From: Oleg Nesterov <oleg@...sign.ru>
To: Ingo Molnar <mingo@...e.hu>
Cc: "Eric W. Biederman" <ebiederm@...ssion.com>,
Robin Holt <holt@....com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Chris Snook <csnook@...hat.com>, linux-kernel@...r.kernel.org,
Jack Steiner <steiner@...ricas.sgi.com>
Subject: Re: init's children list is long and slows reaping children.
On 04/10, Ingo Molnar wrote:
>
> * Eric W. Biederman <ebiederm@...ssion.com> wrote:
>
> > Ingo Molnar <mingo@...e.hu> writes:
> >
> > > no. Two _completely separate_ lists.
> > >
> > > i.e. a to-be-reaped task will still be on the main list _too_. The
> > > main list is for all the PID semantics rules. The reap-list is just
> > > for wait4() processing. The two would be completely separate.
> >
> > And what pray tell except for heuristics is the list of children used
> > for?
>
> on a second thought: the p->children list is needed for the whole
> child/parent task tree, which is needed for sys_getppid(). The question
> is, does anything require us to reparent to within the same thread
> group?
No! That is why I suggest (a long ago, in fact) to move ->children into
->signal_struct. When sub-thread forks, we set ->parent = group_leader.
We don't need forget_original_parent() until the last thead exists. This
also simplify do_wait().
However, this breaks the current ->pdeath_signal behaviour. In fact (and
Eric thinks the same) this _fixes_ this behaviour, but may break things.
Oleg.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists