Re: svn commit: r200274 - head/lib/libc/gen

[ Available lists | Index of svn-src-all | Month of Dec 2009 | Week of 10 Dec 2009 | Raw email | View thread | Wrap long lines | Reply | Tag ]
From
Robert Watson <rwatson@FreeBSD.org>
Date
10 Dec 2009 00:24:29
Subject
Re: svn commit: r200274 - head/lib/libc/gen
Message-ID
alpine.BSF.2.00.0912100023220.23303@fledge.watson.org


[ Hide this part ]
On Wed, 9 Dec 2009, Andrew Gallatin wrote:

> John Baldwin wrote:
>
>> The fact that we don't fail attempts to use pshared outright is probably
>> dubious. They cannot possibly work as currently implemented aside from
>> fork() since the structure embeds a file descriptor and file descriptor
>> indices are a per-process namespace, not a global namespace.
>
> FWIW, this is what confused me. It tends to be kind of a land-mine, since
> programs can be ported from Linux, and appear to work at first for casual
> use. If we don't support pshared, we should return an error from sem_init()
> to make it obvious.
>
> Also, perhaps the sem_init() man page should mention sem_open(), since that
> seems to be the only way to really share a semaphore between processes on
> FreeBSD.

It's beginning to sound like our POSIX semaphores should be behaving more like
umtx, which requires only a shared page, and less like file descriptors. Of
course, that would make the global namespace more tricky...

Robert N M Watson
Computer Laboratory
University of Cambridge


Elapsed time: 0.179 seconds