public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "jld at mozilla dot com" <sourceware-bugzilla@sourceware.org>
To: glibc-bugs@sourceware.org
Subject: [Bug nptl/17214] Expose a function to reset the PID cache
Date: Thu, 18 Dec 2014 00:15:00 -0000	[thread overview]
Message-ID: <bug-17214-131-LhLDmERgq7@http.sourceware.org/bugzilla/> (raw)
In-Reply-To: <bug-17214-131@http.sourceware.org/bugzilla/>

https://sourceware.org/bugzilla/show_bug.cgi?id=17214

Jed Davis <jld at mozilla dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jld at mozilla dot com

--- Comment #10 from Jed Davis <jld at mozilla dot com> ---
(In reply to Ricky Zhou from comment #9)
> We cannot unshare(CLONE_NEWPID); fork(); for each new process because Linux
> does not support calling unshare(CLONE_NEWPID) multiple times. As Steven
> said, I think either of the following would solve our problems:
> 
>  - Expose a way to invalidate glibc's PID cache
>  - Allow child_stack to be NULL (leading to fork-like behavior) when
> CLONE_VM is not set.

Another alternative: expose a variant of fork() which can be passed additional
flags to pass to clone; __fork_with_flags(0) would be equivalent to fork(), and
it could fail with EINVAL if inappropriate bits are set (CLONE_VM, any of the
tid set/clear flags, anything in the signal number field).  There may be a
better name than __fork_with_flags, but hopefully the idea is clear enough.

The advantage over __clone with no child_stack is that it would run
pthread_atfork handlers; this would allow taking advantage of, for example,
malloc implementations that use pthread_atfork to allow allocation on the child
side of a multithreaded fork.

Gecko is more or less able to work around this without too much effort because
the child process creation already had to be refactored to work in the absence
of pthread_atfork (https://bugzilla.mozilla.org/show_bug.cgi?id=772734#c15),
but it would be nice to have the possibility of eventually getting away from
that requirement.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


  parent reply	other threads:[~2014-12-18  0:15 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-29 21:23 [Bug nptl/17214] New: " sstewartgallus00 at mylangara dot bc.ca
2014-07-30  4:07 ` [Bug nptl/17214] " carlos at redhat dot com
2014-07-30 17:39 ` sstewartgallus00 at mylangara dot bc.ca
2014-07-30 17:41 ` sstewartgallus00 at mylangara dot bc.ca
2014-07-31 23:25 ` carlos at redhat dot com
2014-08-01 21:59 ` sstewartgallus00 at mylangara dot bc.ca
2014-08-26  4:38 ` bugdal at aerifal dot cx
2014-08-26 18:11 ` sstewartgallus00 at mylangara dot bc.ca
2014-08-26 18:31 ` sstewartgallus00 at mylangara dot bc.ca
2014-10-30 22:01 ` rickyz at chromium dot org
2014-12-18  0:15 ` jld at mozilla dot com [this message]
2014-12-18 23:58 ` [Bug nptl/17214] Expose a clone variant that shares stacks instead of jumping to a new one sstewartgallus00 at mylangara dot bc.ca
2014-12-19  0:13 ` sstewartgallus00 at mylangara dot bc.ca
2014-12-19  1:17 ` bugdal at aerifal dot cx
2014-12-19 20:29 ` sstewartgallus00 at mylangara dot bc.ca
2014-12-19 21:01 ` bugdal at aerifal dot cx
2015-01-26 22:33 ` sstewartgallus00 at mylangara dot bc.ca

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=bug-17214-131-LhLDmERgq7@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=glibc-bugs@sourceware.org \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).