futex.2: Add further details for FUTEX_CMP_REQUEUE_PI

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
Michael Kerrisk 2015-01-14 18:19:05 +01:00
parent f812a08b1d
commit 9e54d26d3c
1 changed files with 20 additions and 2 deletions

View File

@ -817,7 +817,6 @@ arguments are ignored.
.BR FUTEX_CMP_REQUEUE_PI " (since Linux 2.6.31)"
.\" commit 52400ba946759af28442dee6265c5c0180ac7122
.\" FIXME to complete
This operation is a PI-aware variant of
.BR FUTEX_CMP_REQUEUE .
It requeues waiters that are blocked via
@ -829,8 +828,27 @@ from a non-PI source futex
to a PI target futex
.RI ( uaddr2 ).
As with
.BR FUTEX_CMP_REQUEUE ,
this operation wakes up a maximum of
.I val
waiters that are waiting on the futex at
.IR uaddr .
However, for
.BR FUTEX_CMP_REQUEUE_PI ,
.I val
is required to be 1.
The remaining waiters are removed from the wait queue of the source futex at
.I uaddr
and added to the wait queue of the target futex at
.IR uaddr2 .
The
.I val3
and
.I timeout
arguments serve the same purposes as for
.BR FUTEX_CMP_REQUEUE .
.TP
.BR FUTEX_WAIT_REQUEUE_PI " (since Linux 2.6.31)"
.\" commit 52400ba946759af28442dee6265c5c0180ac7122