Module Name: src Committed By: riastradh Date: Sat Jan 18 07:26:21 UTC 2025
Modified Files: src/sys/kern: sys_futex.c src/tests/lib/libc/sys: t_futex_ops.c Log Message: futex(2): Fix return value of FUTEX_CMP_REQUEUE. The return value is the number of waiters woken _or requeued_, not just the number of waiters woken: FUTEX_CMP_REQUEUE Returns the total number of waiters that were woken up or requeued to the futex for the futex word at uaddr2. If this value is greater than val, then the difference is the number of waiters requeued to the futex for the futex word at uaddr2. https://man7.org/linux/man-pages/man2/futex.2.html While here, clarify some of the arguments with comments so it's not quite so cryptic with val/val2/val3 everywhere. PR kern/56828: futex calls in Linux emulation sometimes hang To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/sys/kern/sys_futex.c cvs rdiff -u -r1.9 -r1.10 src/tests/lib/libc/sys/t_futex_ops.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.