History log of /freebsd-9.3-release/lib/libc/gen/sem_wait.3
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 267654 19-Jun-2014 gjb

Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 251152 30-May-2013 jhb

MFC 249567: mdoc: remove superfluous paragraph macro.


# 250569 12-May-2013 jilles

MFC r249566,r249644: EINTR in POSIX sem_*.

Document that sem_wait() can fail with [EINTR].

Programs often do not expect an [EINTR] return from sem_wait() and POSIX
only allows it if the signal was installed without SA_RESTART. The timeout
in sem_timedwait() is absolute so it can be restarted normally.

The old POSIX semaphore implementation did this correctly, unlike the new
umtx one.

Specific to 9-stable: UMTX_ABSTIME does not exist and therefore
sem_timedwait() is erroneously not restarted after a SA_RESTART signal
handler.

It may be desirable to avoid [EINTR] completely, which matches the pthread
functions and is explicitly permitted by POSIX. However, the kernel must
return [EINTR] at least for signals with SA_RESTART clear, otherwise pthread
cancellation will not abort a semaphore wait. In this commit, only restore
the 8.x behaviour which is also permitted by POSIX, as far as possible with
the ABI in 9-stable.


# 225736 22-Sep-2011 kensmith

Copy head to stable/9 as part of 9.0-RELEASE release cycle.

Approved by: re (implicit)


# 177140 13-Mar-2008 ru

Add missing section number.


# 177133 12-Mar-2008 davidxu

In file sem_timewait.3, remove reference to SYSV semphore in SEE ALSO
section, sync it with sem_wait.3.


# 147952 13-Jul-2005 rwatson

Cross-reference sem_getvalue(3) from several other semaphore-related
functions.

MFC after: 3 days


# 131465 02-Jul-2004 ru

Markup tidying.


# 124530 14-Jan-2004 ru

- libc/sys/sem.c was repocopied to libc/gen/sem.c.
- sem_*(3) manpages were repocopied from libc_r.

Reviewed by: deischen
Repocopy by: markm


# 112542 24-Mar-2003 charnier

The .Fn function. Use .Xr where appropriate.


# 109220 14-Jan-2003 tjr

Cross reference sem(4) so users know which kernel options are required
to use these semaphore functions.


# 84306 01-Oct-2001 ru

mdoc(7) police: Use the new .In macro for #include statements.


# 82642 31-Aug-2001 ru

Use ``.Rv -std'' wherever possible.

Submitted by: yar


# 81588 13-Aug-2001 ru

Spell "FreeBSD" with "F" and "BSD" in uppercase.


# 79754 15-Jul-2001 dd

Remove whitespace at EOL.


# 73093 26-Feb-2001 ru

Use ``.St -p1003.1-96''.


# 63364 17-Jul-2000 jasone

Change my email address in the copyright notices for the sake of consistency
(jasone@canonware.com --> jasone@freebsd.org).


# 59501 22-Apr-2000 phantom

Introduce .Lb macro to libc_r manpages.


# 57260 16-Feb-2000 jasone

Add man pages for the sem_*() functions.

Approved by: jkh