> On May 24, 2018, 10:36 p.m., Andrew Schwartzmeyer wrote: > > src/slave/containerizer/mesos/containerizer.cpp > > Lines 1820 (patched) > > <https://reviews.apache.org/r/63280/diff/2/?file=1885082#file1885082line1820> > > > > Shouldn't we also close the parent's copy of the read end of the pipe > > immediately (and unconditionally) after forking? (Similar to what we do for > > the in/out/err pipes.)
The parent still needs this pipe. However, as @jieyu points out offline, this is still racey, so the right approach is to find some way to apply the `UNSET_CLOEXEC` child hook. - James ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/63280/#review203825 ----------------------------------------------------------- On May 24, 2018, 9:16 p.m., James Peach wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/63280/ > ----------------------------------------------------------- > > (Updated May 24, 2018, 9:16 p.m.) > > > Review request for mesos, Andrew Schwartzmeyer, Benjamin Bannier, Benjamin > Mahler, Greg Mann, and Jie Yu. > > > Bugs: MESOS-8128 > https://issues.apache.org/jira/browse/MESOS-8128 > > > Repository: mesos > > > Description > ------- > > Since the containerizer launch depends on the inherited pipe to signal > the forked child, be explicit about setting O_CLOEXEC on the pipe file > descriptors. Make sure to close the pipe on the error paths. > > > Diffs > ----- > > src/slave/containerizer/mesos/containerizer.cpp > 100e3bbda543d87808da9ff6bea42da5099ea8c5 > > > Diff: https://reviews.apache.org/r/63280/diff/2/ > > > Testing > ------- > > make check (Fedora 25) > > > Thanks, > > James Peach > >
