PIOMan

Documentation

PIOMan locking interface.

This interface manages locking and unified threading API. More...

Collaboration diagram for PIOMan locking interface.:

Typedefs

typedef uint32_t piom_cond_value_t
 value (bitmask) of cond More...
 
typedef piom_cond_value_t piom_cond_t
 

Functions

static void piom_cond_wait (piom_cond_t *cond, piom_cond_value_t mask)
 
static void piom_cond_wait_all (void **pp_conds, int n, uintptr_t offset, piom_cond_value_t mask)
 
static void piom_cond_add (piom_cond_t *cond, piom_cond_value_t mask)
 
static void piom_cond_signal (piom_cond_t *cond, piom_cond_value_t mask)
 
static piom_cond_value_t piom_cond_test (const piom_cond_t *cond, piom_cond_value_t mask)
 
static piom_cond_value_t piom_cond_test_locked (piom_cond_t *cond, piom_cond_value_t mask)
 
static void piom_cond_init (piom_cond_t *cond, piom_cond_value_t initial)
 
static void piom_cond_destroy (piom_cond_t *cond)
 
static void piom_cond_mask (piom_cond_t *cond, piom_cond_value_t mask)
 

Detailed Description

This interface manages locking and unified threading API.

It is used internally for ltasks locking, and is usable by endusers.

Typedef Documentation

◆ piom_cond_t

Definition at line 67 of file piom_lock.h.

◆ piom_cond_value_t

typedef uint32_t piom_cond_value_t

value (bitmask) of cond

Definition at line 49 of file piom_lock.h.

Function Documentation

◆ piom_cond_add()

static void piom_cond_add ( piom_cond_t cond,
piom_cond_value_t  mask 
)
inlinestatic

Definition at line 162 of file piom_lock.h.

◆ piom_cond_destroy()

static void piom_cond_destroy ( piom_cond_t cond)
inlinestatic

Definition at line 182 of file piom_lock.h.

◆ piom_cond_init()

static void piom_cond_init ( piom_cond_t cond,
piom_cond_value_t  initial 
)
inlinestatic

Definition at line 178 of file piom_lock.h.

Referenced by piom_ltask_create().

Here is the caller graph for this function:

◆ piom_cond_mask()

static void piom_cond_mask ( piom_cond_t cond,
piom_cond_value_t  mask 
)
inlinestatic

Definition at line 185 of file piom_lock.h.

◆ piom_cond_signal()

static void piom_cond_signal ( piom_cond_t cond,
piom_cond_value_t  mask 
)
inlinestatic

Definition at line 166 of file piom_lock.h.

Referenced by piom_ltask_completed().

Here is the caller graph for this function:

◆ piom_cond_test()

static piom_cond_value_t piom_cond_test ( const piom_cond_t cond,
piom_cond_value_t  mask 
)
inlinestatic

Definition at line 170 of file piom_lock.h.

◆ piom_cond_test_locked()

static piom_cond_value_t piom_cond_test_locked ( piom_cond_t cond,
piom_cond_value_t  mask 
)
inlinestatic

Definition at line 174 of file piom_lock.h.

◆ piom_cond_wait()

static void piom_cond_wait ( piom_cond_t cond,
piom_cond_value_t  mask 
)
inlinestatic

Definition at line 145 of file piom_lock.h.

References piom_ltask_schedule(), and PIOM_POLL_POINT_BUSY.

Referenced by piom_cond_wait_all().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ piom_cond_wait_all()

static void piom_cond_wait_all ( void **  pp_conds,
int  n,
uintptr_t  offset,
piom_cond_value_t  mask 
)
inlinestatic

Definition at line 150 of file piom_lock.h.

References piom_cond_wait().

Here is the call graph for this function: