svn commit: r273601 - head/lib/libc/gen

John Baldwin jhb at freebsd.org
Sat Oct 25 19:36:43 UTC 2014


On Saturday, October 25, 2014 07:42:44 AM Andrey Chernov wrote:
> On 25.10.2014 6:21, Andrey Chernov wrote:
> > On 24.10.2014 23:55, John Baldwin wrote:
> >> Author: jhb
> >> Date: Fri Oct 24 19:55:49 2014
> >> New Revision: 273601
> >> URL: https://svnweb.freebsd.org/changeset/base/273601
> >> 
> >> Log:
> >>   Don't reference sem(4) from the POSIX semaphore pages.  POSIX
> >>   semaphores
> >>   were reimplemented using umtx in FreeBSD 9 and no longer use sem(4).
> > 
> > sem kernel module referenced in sem(4) uses the same uipc_sem.c file as
> > kernel's P1003_1B_SEMAPHORES option, so they both use the same code and
> > better be cross-linked since sem(4) explains how to turn it on.
> 
> From the first glance I can't determine, is libc implementation better
> than kernel one or not. BTW, firefox port still recommends sem_load="YES"

The sem_init/open/unlike/destroy/post/*wait() API used to use sem(4) (which
is sem.ko and the kernel option) from FreeBSD 5 up through FreeBSD 8.
These functions have used umtx_op() instead of sem(4) since FreeBSD 9.0.

Note that libc/gen/sem_new.c does not call ksem_*.

-- 
John Baldwin


More information about the svn-src-all mailing list