calls). It is typically used to
implement the contended case of a lock in shared memory, as
described in
-.BR futex (4).
+.BR futex (7).
.PP
When a
-.BR futex (4)
+.BR futex (7)
operation did not finish uncontended in userspace, a call needs to be made
to the kernel to arbitrate. Arbitration can either mean putting the calling
process to sleep or, conversely, waking a waiting process.
.PP
Callers of this function are expected to adhere to the semantics as set out in
-.BR futex (4).
+.BR futex (7).
As these
semantics involve writing non-portable assembly instructions, this in turn
probably means that most users will in fact be library authors and not
are ignored.
For
-.BR futex (4),
+.BR futex (7),
this call is executed if decrementing the count gave a negative value
(indicating contention), and will sleep until another process releases
the futex and executes the FUTEX_WAKE operation.
are ignored.
For
-.BR futex (4),
+.BR futex (7),
this is executed if incrementing
the count showed that there were waiters, once the futex value has been set
to 1 (indicating that it is available).
on the s390 architecture.
.SH "SEE ALSO"
.PP
-.BR futex (4),
+.BR futex (7),
`Fuss, Futexes and Furwocks: Fast Userlevel Locking in Linux'
(proceedings of the Ottawa Linux Symposium 2002),
futex example library, futex-*.tar.bz2
.\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de)
.\" Distributed under GPL
.\"
-.TH COMPLEX 5 2002-07-28 "" "complex math"
+.TH COMPLEX 7 2002-07-28 "" "complex math"
.SH NAME
complex \- basics of complex mathematics
.SH SYNOPSIS
.\" <http://shell.ipoline.com/~elmert/comp/docbook2X/>
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng <steve@ggi-project.org>.
-.TH FUTEX 4 2002-12-31 "" "Linux Programmer's Manual"
+.TH FUTEX 7 2002-12-31 "" "Linux Programmer's Manual"
.SH NAME
futex \- Fast Userspace Locking
.SH SYNOPSIS