futex.2: Clarify which operations were available as at Linux 2.6.0

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
Michael Kerrisk 2015-01-12 13:24:43 +01:00
parent 4a7e5b05cc
commit 81c9d87e3d
1 changed files with 11 additions and 4 deletions

View File

@ -147,7 +147,8 @@ The operation specified in
.I op
is one of the following:
.TP
.B FUTEX_WAIT
.BR FUTEX_WAIT " (since Linux 2.6.0)"
.\" Strictly speaking, since some time in 2.5.x
This operation atomically verifies that the futex address
.I uaddr
still contains the value
@ -184,7 +185,8 @@ operation.
.\" FIXME TO complete
[As yet undocumented]
.TP
.B FUTEX_WAKE
.BR FUTEX_WAKE " (since Linux 2.6.0)"
.\" Strictly speaking, since Linux 2.5.x
This operation wakes at most \fIval\fP
processes waiting on this futex address (i.e., inside
.BR FUTEX_WAIT ).
@ -227,7 +229,8 @@ to 1 (indicating that it is available).
.\" FIXME to complete
[As yet undocumented]
.TP
.BR FUTEX_FD " (present up to and including Linux 2.6.25)"
.BR FUTEX_FD " (from Linux 2.6.0 up to and including Linux 2.6.25)"
.\" Strictly speaking, from Linux 2.5.x to 2.6.25
To support asynchronous wakeups, this operation associates a file descriptor
with a futex.
.\" , suitable for .BR poll (2).
@ -253,7 +256,8 @@ Because it was inherently racy,
.B FUTEX_FD
has been removed from Linux 2.6.26 onward.
.TP
.BR FUTEX_REQUEUE " (since Linux 2.5.70)"
.BR FUTEX_REQUEUE " (since Linux 2.6.0)"
.\" Strictly speaking: from Linux 2.5.70
This operation was introduced in order to avoid a "thundering herd" effect
when
.B FUTEX_WAKE
@ -453,6 +457,9 @@ was not equal to the expected value
at the time of the call.
.SH VERSIONS
.PP
Futexes were first made available in a stable kernel release
with Linux 2.6.0.
Initial futex support was merged in Linux 2.5.7 but with different semantics
from what was described above.
A 4-argument system call with the semantics