VSF Documented
Macros | Functions
futex.h File Reference
#include <stdint.h>

Go to the source code of this file.

Macros

#define FUTEX_WAIT   0
 
#define FUTEX_WAKE   1
 
#define FUTEX_FD   2
 
#define FUTEX_REQUEUE   3
 
#define FUTEX_CMP_REQUEUE   4
 
#define FUTEX_WAKE_OP   5
 
#define FUTEX_LOCK_PI   6
 
#define FUTEX_UNLOCK_PI   7
 
#define FUTEX_TRYLOCK_PI   8
 
#define FUTEX_WAIT_BITSET   9
 
#define FUTEX_WAKE_BITSET   10
 
#define FUTEX_WAIT_REQUEUE_PI   11
 
#define FUTEX_CMP_REQUEUE_PI   12
 
#define FUTEX_PRIVATE_FLAG   128
 
#define FUTEX_CLOCK_REALTIME   256
 
#define FUTEX_CMD_MASK   ~(FUTEX_PRIVATE_FLAG | FUTEX_CLOCK_REALTIME)
 
#define __NR_futex(__p0, __p1, __p2, __p3, __p4, __p5)    sys_futex((uint32_t *)(__p0), (__p1), (__p2), (__p3), (uint32_t *)(__p4), (__p5))
 
#define __NR_futex_time64   __NR_futex
 
#define SYS_futex   __NR_futex
 

Functions

long sys_futex (uint32_t *futex, int futex_op, uint32_t val, uintptr_t val2, uint32_t *futex2, uint32_t val3)
 

Macro Definition Documentation

◆ FUTEX_WAIT

#define FUTEX_WAIT   0

◆ FUTEX_WAKE

#define FUTEX_WAKE   1

◆ FUTEX_FD

#define FUTEX_FD   2

◆ FUTEX_REQUEUE

#define FUTEX_REQUEUE   3

◆ FUTEX_CMP_REQUEUE

#define FUTEX_CMP_REQUEUE   4

◆ FUTEX_WAKE_OP

#define FUTEX_WAKE_OP   5

◆ FUTEX_LOCK_PI

#define FUTEX_LOCK_PI   6

◆ FUTEX_UNLOCK_PI

#define FUTEX_UNLOCK_PI   7

◆ FUTEX_TRYLOCK_PI

#define FUTEX_TRYLOCK_PI   8

◆ FUTEX_WAIT_BITSET

#define FUTEX_WAIT_BITSET   9

◆ FUTEX_WAKE_BITSET

#define FUTEX_WAKE_BITSET   10

◆ FUTEX_WAIT_REQUEUE_PI

#define FUTEX_WAIT_REQUEUE_PI   11

◆ FUTEX_CMP_REQUEUE_PI

#define FUTEX_CMP_REQUEUE_PI   12

◆ FUTEX_PRIVATE_FLAG

#define FUTEX_PRIVATE_FLAG   128

◆ FUTEX_CLOCK_REALTIME

#define FUTEX_CLOCK_REALTIME   256

◆ FUTEX_CMD_MASK

#define FUTEX_CMD_MASK   ~(FUTEX_PRIVATE_FLAG | FUTEX_CLOCK_REALTIME)

◆ __NR_futex

#define __NR_futex (   __p0,
  __p1,
  __p2,
  __p3,
  __p4,
  __p5 
)     sys_futex((uint32_t *)(__p0), (__p1), (__p2), (__p3), (uint32_t *)(__p4), (__p5))

◆ __NR_futex_time64

#define __NR_futex_time64   __NR_futex

◆ SYS_futex

#define SYS_futex   __NR_futex

Function Documentation

◆ sys_futex()

long sys_futex ( uint32_t futex,
int  futex_op,
uint32_t  val,
uintptr_t  val2,
uint32_t futex2,
uint32_t  val3 
)