github.com/google/syzkaller@v0.0.0-20240517125934-c0f1611a36d6/sys/fuchsia/futex.txt (about)

     1  # Copyright 2017 syzkaller project authors. All rights reserved.
     2  # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
     3  
     4  # See https://cs.opensource.google/fuchsia/fuchsia/+/main:zircon/vdso/futex.fidl
     5  
     6  include <zircon/syscalls.h>
     7  
     8  # NOTE: The `zx_handle`s in these calls are specified in the FIDL as plain
     9  # `handle`, without specialization.
    10  
    11  # TODO: limit value_ptr space somehow to make matches more frequent.
    12  zx_futex_wait(value_ptr ptr[in, int32], current_value int32, new_futex_owner zx_handle, deadline zx_time)
    13  zx_futex_wake(value_ptr ptr[in, int32], wake_count int32)
    14  zx_futex_requeue(value_ptr ptr[in, int32], wake_count int32, current_value int32, requeue_ptr ptr[in, int32], requeue_count int32, new_requeue_owner zx_thread)
    15  zx_futex_wake_single_owner(value_ptr ptr[in, int32])
    16  zx_futex_requeue_single_owner(value_ptr ptr[in, int32], current_value int32, requeue_ptr ptr[in, int32], requeue_count int32, new_requeue_owner zx_thread)
    17  zx_futex_get_owner(value_ptr ptr[in, int32], koid ptr[out, int64])