PatchworkOS
Loading...
Searching...
No Matches
rwmutex.h File Reference
#include <kernel/sched/wait.h>
#include <stdint.h>

Go to the source code of this file.

Data Structures

struct  rwmutex_t
 Read-Write Mutex structure. More...
 

Macros

#define RWMUTEX_READ_SCOPE(mutex)
 Acquires a rwmutex for reading for the reminder of the current scope.
 
#define RWMUTEX_WRITE_SCOPE(mutex)
 Acquires a rwmutex for writing for the reminder of the current scope.
 

Typedefs

typedef struct rwmutex rwmutex_t
 

Functions

void rwmutex_init (rwmutex_t *mtx)
 Initializes a rwmutex.
 
void rwmutex_deinit (rwmutex_t *mtx)
 Deinitializes a rwmutex.
 
void rwmutex_read_acquire (rwmutex_t *mtx)
 Acquires a rwmutex for reading, blocking until it is available.
 
uint64_t rwmutex_read_try_acquire (rwmutex_t *mtx)
 Tries to acquire a rwmutex for reading.
 
void rwmutex_read_release (rwmutex_t *mtx)
 Releases a rwmutex from reading.
 
void rwmutex_write_acquire (rwmutex_t *mtx)
 Acquires a rwmutex for writing, blocking until it is available.
 
uint64_t rwmutex_write_try_acquire (rwmutex_t *mtx)
 Tries to acquire a rwmutex for writing.
 
void rwmutex_write_release (rwmutex_t *mtx)
 Releases a rwmutex from writing.
 
static void rwmutex_read_cleanup (rwmutex_t **mutex)
 
static void rwmutex_write_cleanup (rwmutex_t **mutex)
 

Typedef Documentation

◆ rwmutex_t

typedef struct rwmutex rwmutex_t

Definition at line 6 of file rwmutex.h.