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