diff options
| author | Muhammad Usama Anjum <usama.anjum@collabora.com> | 2021-11-23 15:33:09 +0500 |
|---|---|---|
| committer | Aleksandr Nogikh <wp32pw@gmail.com> | 2021-11-29 15:19:06 +0100 |
| commit | d0830353e30438120e98eb8b8c4c176095093fad (patch) | |
| tree | 0cf853759040356674f4ea58b9abf4e50cf18a68 | |
| parent | efd9a70bcb71d237ac8557ea08b003d283246e08 (diff) | |
sys/linux: add new futex_waitv syscall
Add description of the new syscall futex_waitv.
Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
| -rw-r--r-- | CONTRIBUTORS | 1 | ||||
| -rw-r--r-- | sys/linux/futex.txt | 14 | ||||
| -rw-r--r-- | sys/linux/futex.txt.const | 6 |
3 files changed, 21 insertions, 0 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 70e279967..040cad028 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -72,6 +72,7 @@ Christoph Paasch Collabora André Almeida Ricardo Cañuelo + Muhammad Usama Anjum Dipanjan Das Daimeng Wang Jukka Kaartinen diff --git a/sys/linux/futex.txt b/sys/linux/futex.txt index eaf8885e3..98409960f 100644 --- a/sys/linux/futex.txt +++ b/sys/linux/futex.txt @@ -17,4 +17,18 @@ robust_list { next ptr[in, robust_list, opt] } +futex_waitv(addr ptr[in, array[futex_waitv_struct, 0:FUTEX_WAITV_MAX_INDEX]], val len[addr], flg const[0], timeout ptr[in, timespec], clockid flags[futex_clock_id]) + +futex_waitv_struct { + val int64 + uaddr ptr[in, int64] + flgs flags[struct_flags_op, int32] + reserved const[0, int32] +} + futex_op = FUTEX_WAIT, FUTEX_WAKE, FUTEX_FD, FUTEX_REQUEUE, FUTEX_CMP_REQUEUE, FUTEX_WAKE_OP, FUTEX_LOCK_PI, FUTEX_UNLOCK_PI, FUTEX_TRYLOCK_PI, FUTEX_WAIT_BITSET, FUTEX_WAKE_BITSET, FUTEX_WAIT_REQUEUE_PI, FUTEX_CMP_REQUEUE_PI, FUTEX_LOCK_PI2, FUTEX_PRIVATE_FLAG, FUTEX_CLOCK_REALTIME + +futex_clock_id = CLOCK_REALTIME, CLOCK_MONOTONIC +struct_flags_op = FUTEX_32, FUTEX_PRIVATE_32 +define FUTEX_WAITV_MAX_INDEX FUTEX_WAITV_MAX - 1 +define FUTEX_PRIVATE_32 FUTEX_32 | FUTEX_PRIVATE_FLAG diff --git a/sys/linux/futex.txt.const b/sys/linux/futex.txt.const index 38ac16b39..add271b7f 100644 --- a/sys/linux/futex.txt.const +++ b/sys/linux/futex.txt.const @@ -1,21 +1,27 @@ # Code generated by syz-sysgen. DO NOT EDIT. arches = 386, amd64, arm, arm64, mips64le, ppc64le, riscv64, s390x +CLOCK_MONOTONIC = 1 +CLOCK_REALTIME = 0 +FUTEX_32 = 2 FUTEX_CLOCK_REALTIME = 256 FUTEX_CMP_REQUEUE = 4 FUTEX_CMP_REQUEUE_PI = 12 FUTEX_FD = 2 FUTEX_LOCK_PI = 6 FUTEX_LOCK_PI2 = 13 +FUTEX_PRIVATE_32 = 130 FUTEX_PRIVATE_FLAG = 128 FUTEX_REQUEUE = 3 FUTEX_TRYLOCK_PI = 8 FUTEX_UNLOCK_PI = 7 FUTEX_WAIT = 0 +FUTEX_WAITV_MAX_INDEX = 127 FUTEX_WAIT_BITSET = 9 FUTEX_WAIT_REQUEUE_PI = 11 FUTEX_WAKE = 1 FUTEX_WAKE_BITSET = 10 FUTEX_WAKE_OP = 5 __NR_futex = 98, 386:arm:240, amd64:202, mips64le:5194, ppc64le:221, s390x:238 +__NR_futex_waitv = 449, mips64le:5449 __NR_get_robust_list = 100, 386:312, amd64:274, arm:339, mips64le:5269, ppc64le:299, s390x:305 __NR_set_robust_list = 99, 386:311, amd64:273, arm:338, mips64le:5268, ppc64le:300, s390x:304 |
