mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Oleg Nesterov <oleg@redhat.com>
To: Roland McGrath <roland@redhat.com>
Cc: Ratan Nalumasu <rnalumasu@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Ingo Molnar <mingo@elte.hu>,
	Vitaly Mayatskikh <vmayatsk@redhat.com>,
	linux-kernel@vger.kernel.org
Subject: Re: [rfc] do not place sub-threads on task_struct->children list
Date: Wed, 1 Jul 2009 07:40:16 +0200	[thread overview]
Message-ID: <20090701054016.GA26877@redhat.com> (raw)
In-Reply-To: <20090630193037.6CCE01C4@magilla.sf.frob.com>

On 06/30, Roland McGrath wrote:
>
> > Currently we add sub-threads to ->real_parent->children list. This
> > buys nothing but slows down do_wait().
> >
> > With this patch ->children contains only main threads (group leaders).
> > The only complication is that forget_original_parent() should iterate
> > over sub-threads by hand.
>
> This seems right to me, though I'll admit I haven't really walked through
> all the exit/reparent paths afresh with this in mind.
>
> Note that this naturally suggests moving ->sibling to signal_struct.  (Of
> course that can come later.)  The abuse of sibling in reparent_leader adds
> a wrinkle to that, but off hand it looks like it could do the same with it
> living in signal_struct with a bit of contortion.

Yes, this change was suggested a long ago.

But in that case forget_original_parent() still has to iterate over all childs
to send ->pdeath_signal and change ->real_parent when we reparent to sub-thread.

> Oh, and what about the de_thread() leader-replacement case?

Ah, good point!

de_thread() should do list_replace_init().

Oleg.


  reply	other threads:[~2009-07-01  5:43 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-22 17:04 [RFC,PATCH 2/2] change __wake_up_parent() to use filtered wakeup Oleg Nesterov
2009-06-24  9:13 ` Roland McGrath
2009-06-24 15:21   ` Oleg Nesterov
2009-06-24 18:57     ` Roland McGrath
2009-06-24 16:11       ` Oleg Nesterov
2009-06-24 19:42         ` Roland McGrath
2009-06-24 17:13           ` Oleg Nesterov
2009-06-24 20:51             ` Roland McGrath
     [not found]               ` <93ad5f3f0906252111n48742b9ax8dc2ad35b30f4292@mail.gmail.com>
2009-06-29  3:38                 ` Oleg Nesterov
2009-06-29 23:08                   ` [rfc] do not place sub-threads on task_struct->children list Oleg Nesterov
2009-06-30 19:30                     ` Roland McGrath
2009-07-01  5:40                       ` Oleg Nesterov [this message]
2009-06-30 19:22                   ` [RFC,PATCH 2/2] change __wake_up_parent() to use filtered wakeup Roland McGrath

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090701054016.GA26877@redhat.com \
    --to=oleg@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=rnalumasu@gmail.com \
    --cc=roland@redhat.com \
    --cc=vmayatsk@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®