RTEMS 6.1-rc2
Loading...
Searching...
No Matches
Macros | Functions

This source file contains the implementation of _Mutex_Acquire(), _Mutex_Acquire_timed(), _Mutex_Acquire_timed_ticks(), _Mutex_Try_acquire(), _Mutex_Release(), _Mutex_recursive_Acquire(), _Mutex_recursive_Acquire_timed(), _Mutex_recursive_Try_acquire(), and _Mutex_recursive_Release(). More...

#include <sys/lock.h>
#include <errno.h>
#include <rtems/score/assert.h>
#include <rtems/score/muteximpl.h>
#include <rtems/score/threadimpl.h>
#include <rtems/score/todimpl.h>

Macros

#define MUTEX_TQ_OPERATIONS   &_Thread_queue_Operations_priority_inherit
 

Functions

 RTEMS_STATIC_ASSERT (offsetof(Mutex_Control, Queue)==offsetof(struct _Mutex_Control, _Queue), MUTEX_CONTROL_QUEUE)
 
 RTEMS_STATIC_ASSERT (sizeof(Mutex_Control)==sizeof(struct _Mutex_Control), MUTEX_CONTROL_SIZE)
 
 RTEMS_STATIC_ASSERT (offsetof(Mutex_recursive_Control, Mutex)==offsetof(struct _Mutex_recursive_Control, _Mutex), MUTEX_RECURSIVE_CONTROL_MUTEX)
 
 RTEMS_STATIC_ASSERT (offsetof(Mutex_recursive_Control, nest_level)==offsetof(struct _Mutex_recursive_Control, _nest_level), MUTEX_RECURSIVE_CONTROL_NEST_LEVEL)
 
 RTEMS_STATIC_ASSERT (sizeof(Mutex_recursive_Control)==sizeof(struct _Mutex_recursive_Control), MUTEX_RECURSIVE_CONTROL_SIZE)
 
void _Mutex_Acquire (struct _Mutex_Control *_mutex)
 
int _Mutex_Acquire_timed (struct _Mutex_Control *_mutex, const struct timespec *abstime)
 
int _Mutex_Try_acquire (struct _Mutex_Control *_mutex)
 
void _Mutex_Release (struct _Mutex_Control *_mutex)
 
void _Mutex_recursive_Acquire (struct _Mutex_recursive_Control *_mutex)
 
int _Mutex_recursive_Acquire_timed (struct _Mutex_recursive_Control *_mutex, const struct timespec *abstime)
 
int _Mutex_recursive_Try_acquire (struct _Mutex_recursive_Control *_mutex)
 
void _Mutex_recursive_Release (struct _Mutex_recursive_Control *_mutex)
 

Detailed Description

This source file contains the implementation of _Mutex_Acquire(), _Mutex_Acquire_timed(), _Mutex_Acquire_timed_ticks(), _Mutex_Try_acquire(), _Mutex_Release(), _Mutex_recursive_Acquire(), _Mutex_recursive_Acquire_timed(), _Mutex_recursive_Try_acquire(), and _Mutex_recursive_Release().