svn commit: r193165 - head/sys/compat/linux
jilles at stack.nl
Sun May 31 12:27:02 UTC 2009
On Sun, May 31, 2009 at 12:04:01PM +0000, Dmitry Chagin wrote:
> Author: dchagin
> Date: Sun May 31 12:04:01 2009
> New Revision: 193165
> URL: http://svn.freebsd.org/changeset/base/193165
> Move new socket flags handling into a separate function as Linux
> introduced more syscalls which uses these flags.
I think this does not fulfill the purpose of LINUX_SOCK_CLOEXEC exactly:
if another thread forks and execs at the wrong time, it may inherit the
socket without the CLOEXEC flag set.
The obvious way to fix this is to implement SOCK_CLOEXEC in the native
syscalls, in such a way that other threads can never see the new fd
without the CLOEXEC flag set.
That could be fairly complicated and it is a pretty rare situation,
More information about the svn-src-head