aboutsummaryrefslogtreecommitdiffstats
path: root/man/man2const/FUTEX_REQUEUE.2const
blob: 04b48e1f1e06d8ac3ed758eb6f8fea34ef1aaff2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
.\" Copyright, the authors of the Linux man-pages project
.\"
.\" %%%LICENSE_START(FREELY_REDISTRIBUTABLE)
.\" may be freely modified and distributed
.\" %%%LICENSE_END
.\"
.TH FUTEX_REQUEUE 2const (date) "Linux man-pages (unreleased)"
.SH NAME
FUTEX_REQUEUE \- wake some waiters, and requeue others
.SH LIBRARY
Standard C library
.RI ( libc ,\~ \-lc )
.SH SYNOPSIS
.nf
.BR "#include <linux/futex.h>" "  /* Definition of " FUTEX_* " constants */"
.BR "#include <sys/syscall.h>" "  /* Definition of " SYS_* " constants */"
.B #include <unistd.h>
.P
.BI "long syscall(SYS_futex, uint32_t *" uaddr ", FUTEX_REQUEUE,"
.BI "             uint32_t " val ", uint32_t " val2 ", uint32_t *" uaddr2 );
.fi
.SH DESCRIPTION
This operation performs the same task as
.BR FUTEX_CMP_REQUEUE (2const),
except that the futex word isn't compared.
.\"
.SH RETURN VALUE
On error,
\-1 is returned,
and
.I errno
is set to indicate the error.
.P
On success,
.B FUTEX_REQUEUE
returns the number of waiters that were woken up.
.SH ERRORS
See
.BR futex (2).
.TP
.B EFAULT
.I uaddr2
did not point to a valid user-space address.
.TP
.B EINVAL
.I uaddr2
does not point to a valid object\[em]that is,
the address is not four-byte-aligned.
.TP
.B EINVAL
The kernel detected an inconsistency between the user-space state at
.I uaddr
and the kernel state\[em]that is, it detected a waiter which waits in
.BR FUTEX_LOCK_PI (2const)
or
.BR FUTEX_LOCK_PI2 (2const)
on
.IR uaddr .
.SH STANDARDS
Linux.
.SH HISTORY
Linux 2.6.0.
.SH SEE ALSO
.BR futex (2)