Michael Kerrisk
dcdfde2633
futex.2: srcfix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:42 +01:00
Michael Kerrisk
f2103b2686
futex.2: wfix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:42 +01:00
Michael Kerrisk
43b9908905
futex.2: SEE ALSO: add Documentation/{pi-futex.txt,futex-requeue-pi.txt}
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:42 +01:00
Michael Kerrisk
dd218aaa9d
futex.2: srcfix: add FIXMEs
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:42 +01:00
Michael Kerrisk
9913033cf0
futex.2: SEE ALSO: add get_robust_list(2)
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:42 +01:00
Michael Kerrisk
09cb4ce716
futex.2: tfix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:42 +01:00
Michael Kerrisk
a7c2bf45b7
futex.2: Reorder operations list more or less chronologically
...
Since there are various sets of related futex operations
that were added at the same time, ordering the descriptions
of operations chronologically makes some sense. In the
meantime, though, keep all of the "PI" operations together.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:42 +01:00
Michael Kerrisk
63d3f91178
futex.2: tfix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:42 +01:00
Michael Kerrisk
e9d4496bf3
futex.2: Add discussion of FUTEX_WAIT_BITSET/FUTEX_WAKE_BITSET "multiplexing"
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:42 +01:00
Michael Kerrisk
98d769c098
futex.2: Enhance FUTEX_WAKE_BITSET text
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Thomas Gleixner
55cc422d78
futex.2: Document FUTEX_WAKE_BITSET
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
fd9e59d424
futex.2: Add description of FUTEX_WAIT_BITSET 'timeout' argument
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Thomas Gleixner
79c9b4366e
futex.2: Document FUTEX_WAIT_BITSET
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
5447735dd2
futex.2: Consolidate EINVAL FUTEX_LOCK_PI errors
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
52dee70ef0
futex.2: wfix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
180f97b797
futex.2: Reword invalid timeout EINVAL case more generally
...
Several operations can produce this error, so reword
the text more generally.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
6b060884c5
futex.2: srcfix: added FIXMES
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
0582b19df0
futex.2: wfix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
1afcee7c9b
futex.2: ffix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
4d85047f16
futex.2: Rewrite text of ETIMEDOUT to omit mention of FUTEX_WAIT
...
Several operations can employ timeouts, so word this error
more generally.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
0c74df0b6a
futex.2: Reword EINVAL error for invalid 'uaddr'/ 'uaddr2' case
...
There's no need to list all of the various futex operations in
this error case. These arguments are used the same way by each
operation, so the text can be worded in a more general way.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
ae2c1774a2
futex.2: Note the existence of the _PRIVATE constants for 'futex_op'
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
ff5976814d
futex.2: Expand FUTEX_FD description
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
75bc6c1197
futex.2: srcfix: note kernel commit that removed FUTEX_FD
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
1abce893a5
futex.2: srcfix: add copyright notices
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
730bfbda71
futex.2: FUTEX_WAKE makes no guarantees about which waiters are awoken
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
2674f7815a
futex.2: FUTEX_WAIT_BITSET can also get EINTR error
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
4710334a35
futex.2: wfix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
36ab2074ca
futex.2: Add introductory paragraph describing 'timeout', 'uaddr2', and 'val3'
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
f388ba704e
futex.2: Rewrite the intro paragraphs a little
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
dd05d61221
futex.2: Cut down discussion of FUTEX_REQUEUE; defer to FUTEX_CMP_REQUEUE
...
FUTEX_CMP_REQUEUE supercedes FUTEX_REQUEUE and provides a superset
of its functionality. There is need to duplicate any details in
the FUTEX_REQUEUE description, simple defer to the
FUTEX_CMP_REQUEUE and note the differences. This also guides the
reader to do the right thing: use FUTEX_CMP_REQUEUE rather than
FUTEX_REQUEUE.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
3dfcc11d46
futex.2: Expand description of FUTEX_CMP_REQUEUE
...
With some help from "Futexes are tricky" bt Ulrich Drepper.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
4ac63a6c1a
futex.2: Warn that FUTEX_REQUEUE should be avoided in favor of FUTEX_CMP_REQUEUE
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:41 +01:00
Michael Kerrisk
6bac3b8517
futex.2: Document FUTEX_WAKE_OP
...
Based on "Futexes are tricky" and some reading of the kernel
source.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
f42eb21b57
futex.2: SEE ALSO: Add reference to "Futexes are tricky" by Ulrich Drepper
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
ec77c507c1
futex.2: tfix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
d33602c4e0
futex.2: Rename 'op' argument to 'futex_op'
...
This is a little more readable, and also helps avoid confusing
when talking about the 'op' subfield in the FUTEX_WAKE_OP
discussion.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
9a12ca2185
futex.2: ffix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
519f2c3db6
futex.2: srcfix: add FIXME
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
f065673c7a
futex.2: Elaborate on the operation of FUTEX_WAIT
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
36448cfa8d
futex.2: Remove duplicate EQWOULDBLOCK error
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
1c952cf53c
futex.2: Note that the CLOCK_MONOTONIC clock is used for relative timeouts
...
Verified from inspection of kernel/futex.c::futex_wait().
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
1909e523d0
futex.2: Clarify that the FUTEX_WAIT timeout is relative
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
81c9d87e3d
futex.2: Clarify which operations were available as at Linux 2.6.0
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
4a7e5b05cc
futex.2: Rework FUTEX_CLOCK_REALTIME text
...
And move ENOSYS diuscussion to ERRORS.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
d67e21f5e2
futex.2: Add placeholders for as yet undocumented operations
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Thomas Gleixner
2e98bbc24a
futex.2: Document FUTEX_CLOCK_REALTIME
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Thomas Gleixner
fc30eb799b
futex.2: Document FUTEX_PRIVATE_FLAG
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
6be4bad7e0
futex.2: Note that 'op' argument consists of two parts: operation + options
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk
5c47973251
futex.2: wfix
...
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00