Review request for 5049299
martinrb at google.com
Thu May 28 10:56:00 PDT 2009
On Thu, May 28, 2009 at 01:56, Florian Weimer <fweimer at bfk.de> wrote:
> * Michael McMahon:
> > webrev location: http://cr.openjdk.java.net/~michaelm/5049299/webrev.00/<http://cr.openjdk.java.net/%7Emichaelm/5049299/webrev.00/>
> > **I'd like to give an outline of the change here, to make reviewing
> > the webrev a bit easier. Basically, while posix_spawn() is a fairly
> > elaborate and complicated system call, it can't quite do everything
> > that the old fork()/exec() combination can do,
> I've always assumed that the ProcessBuilder requirements could be
> fulfilled by posix_spawn and friends. Could you elaborate why this is
> not the case?
You need to pass a list of file descriptor actions to posix_spawn,
but you cannot safely compute such a complete list of actions because
you are still in the parent when doing this.
The computation of the list of actions (closes and dups)
itself needs to be done in the child.
> The file descriptor setup race mentioned in the comments shouldn't
> apply, really--the reshuffling should occur in the child, isolated
> from the parent, otherwise the implementation is quite broken and
> Florian Weimer <fweimer at bfk.de>
> BFK edv-consulting GmbH http://www.bfk.de/
> Kriegsstraße 100 tel: +49-721-96201-1
> D-76133 Karlsruhe fax: +49-721-96201-99
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the core-libs-dev