Commit Graph

101 Commits

Author SHA1 Message Date
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
Michael Kerrisk 409f08b018 futex.2: ffix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk a72a3aeb43 futex.2: tfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk fd1dc4c2c7 futex.2: srcfix: Add FIXME
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk e169277fca futex.2: ERRORS: add FUTEX_CMP_REQUEUE to EINVAL inconsistent state case
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk a1f47699ab futex.2: ERRORS: add FUTEX_CMP_REQUEUE to EINVAL for non-4-byte aligned address
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk 98fe2f25d2 futex.2: Add FIXME
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk 03433acb7b futex.2: wfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk add875c03c futex.2: ERRORS: add EINVAL for FUTEX_REQUEUE to same futex
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk bae14b6c60 futex.2: ERRORS: Add FUTEX_REQUEUE to EINVAL inconsistent state case
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk caf1ff2510 futex.2: ERRORS: add FUTEX_REQUEUE to EINVAL for non-4-byte aligned address
Reported-by Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Thomas Gleixner 2abb73b988 futex.2: Rework description of arguments for FUTEX_REQUEUE
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:40 +01:00
Michael Kerrisk 4798a7f357 futex.2: ffix: Separate text about ignored arguments into individual paragraphs
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:39 +01:00
Michael Kerrisk 496df3049b futex.2: tfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:39 +01:00
Thomas Gleixner 9534086bb1 futex.2: ERRORS: add EINVAL error for FUTEX_WAIT inconsistent state case
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:39 +01:00
Michael Kerrisk ea355b7f77 futex.2: Add FUTEX_WAKE to EINVAL error for 'uaddr' not 4-byte aligned
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:39 +01:00
Michael Kerrisk d1926d782e futex.2: Reword ETIMEDOUT error
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:39 +01:00
Michael Kerrisk 6b5025a640 futex.2: ERRORS: add EWOULDBLOCK for FUTEX_WAIT atomic enqueueing failed
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:39 +01:00
Michael Kerrisk 51ee94bee5 futex.2: ERRORS: add EINVAL for 'uaddr' not 4-byte aligned
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:39 +01:00
Michael Kerrisk fb2f4c272f futex.2: ERRORS: Add EINVAL error for invalid timeout
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:39 +01:00
Michael Kerrisk 1ea901e832 futex.2: ERRORS: Improve description of EFAULT error
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-12-15 14:39:39 +01:00
Stéphane Aulery d282bb247b iconv.1, localedef.1, access.2, execveat.2, fanotify_init.2, futex.2, ioctl_fat.2, mount.2, ftw.3, sd.4, tty_ioctl.4, fanotify.7, futex.7, posixoptions.7, iconvconfig.8: srcfix: Remove useless quotes from .SS and .SH sections
Signed-off-by: Stéphane Aulery <saulery@free.fr>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2015-03-08 08:55:03 +01:00
Michael Kerrisk bea08fec7e adjtimex.2, bind.2, cacheflush.2, clone.2, fallocate.2, fanotify_init.2, fanotify_mark.2, flock.2, futex.2, getdents.2, getpriority.2, getrlimit.2, gettid.2, gettimeofday.2, ioprio_set.2, kexec_load.2, migrate_pages.2, modify_ldt.2, mount.2, move_pages.2, mprotect.2, msgop.2, nfsservctl.2, perf_event_open.2, pread.2, ptrace.2, recvmmsg.2, rename.2, restart_syscall.2, sched_setattr.2, send.2, shmop.2, shutdown.2, sigaction.2, signalfd.2, syscalls.2, timer_create.2, timerfd_create.2, tkill.2, vmsplice.2, wait.2, aio_init.3, confstr.3, exit.3, fmemopen.3, fopen.3, getaddrinfo.3, getauxval.3, getspnam.3, isalpha.3, isatty.3, mallinfo.3, malloc.3, mallopt.3, psignal.3, pthread_attr_setinheritsched.3, qecvt.3, queue.3, rtnetlink.3, strerror.3, strftime.3, toupper.3, towlower.3, towupper.3, initrd.4, locale.5, proc.5, bootparam.7, capabilities.7, ddp.7, fanotify.7, icmp.7, inotify.7, ip.7, ipv6.7, netdevice.7, netlink.7, path_resolution.7, rtld-audit.7, rtnetlink.7, sched.7, signal.7, socket.7, svipc.7, tcp.7, unix.7, ld.so.8: srcfix: Update FIXMEs
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2014-08-21 16:47:44 -05:00
Michael Kerrisk 3d15531307 chown.2, fcntl.2, futex.2, recvmmsg.2, sched_setscheduler.2, semget.2, shmget.2, malloc.3, pthread_attr_setinheritsched.3, pthread_attr_setschedparam.3, pthread_attr_setschedpolicy.3, pthread_setaffinity_np.3, strcpy.3, capabilities.7, cpuset.7, credentials.7, pthreads.7: tstamp
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2014-05-21 13:15:30 +02:00
Michael Kerrisk b939d6e4ba futex.2: Note that there is no glibc wrapper
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2014-05-15 06:45:22 +02:00
Michael Kerrisk 27b38e1c2b futex.2: srcfix: Update FIXME
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2014-05-14 10:36:23 +02:00
Michael Kerrisk 11b520ed8f alloc_hugepages.2, futex.2, vm86.2: tfix
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2014-04-23 20:40:01 +02:00
Michael Kerrisk 42f05d6438 futex.2, send.2, setreuid.2, malloc.3, tcp.7: tstamp
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-12-12 20:40:15 +13:00
Rodrigo Campos a605264d16 futex.2: Fix link to Rusty's futex example library
When I asked to webmaster@kernel.org, Konstantin Ryabitsev
answered that the ".nl." is "an obsolete scheme and really
should be changed to just ftp.kernel.org".

Signed-off-by: Rodrigo Campos <rodrigo@sdfg.com.ar>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-10-26 10:41:37 +13:00
Michael Kerrisk 82a6092b03 futex.2: The 'timeout' can be rounded upwards by clock granularity and also overrun
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-09-04 10:39:34 +02:00
Michael Kerrisk d806bc0518 clock_nanosleep.2, futex.2, nanosleep.2, poll.2, sigaction.2, sigreturn.2, signal.7: SEE ALSO: add restart_syscall(2)
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-07-30 05:21:20 +02:00
Michael Kerrisk 45e32119fa futex.2, futimes.3, getpass.3, realpath.3, stdarg.3, termios.3, bootparam.7, socket.7: tstamp
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-03-15 08:16:49 +01:00
Michael Kerrisk c18a1e143f futex.2: 'timeout' is a minimum duration that the call will wait, not a maximum
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-03-12 10:31:10 +01:00