RTEMS 6.1-rc2
|
Private Inlined Routines for POSIX Mutex's. More...
#include <errno.h>
#include <pthread.h>
#include <rtems/score/percpu.h>
#include <rtems/score/muteximpl.h>
#include <rtems/score/threadimpl.h>
Go to the source code of this file.
Data Structures | |
struct | POSIX_Mutex_Control |
Macros | |
#define | POSIX_MUTEX_PROTOCOL_MASK 0x3UL |
#define | POSIX_MUTEX_RECURSIVE 0x4UL |
#define | POSIX_MUTEX_FLAGS_MASK 0x7UL |
#define | POSIX_MUTEX_MAGIC 0x961c13b8UL |
#define | POSIX_MUTEX_NO_PROTOCOL_TQ_OPERATIONS &_Thread_queue_Operations_FIFO |
#define | POSIX_MUTEX_PRIORITY_INHERIT_TQ_OPERATIONS &_Thread_queue_Operations_priority_inherit |
#define | POSIX_MUTEX_PRIORITY_CEILING_TQ_OPERATIONS &_Thread_queue_Operations_priority |
#define | POSIX_MUTEX_ABSTIME_TRY_LOCK ((uintptr_t) 1) |
#define | POSIX_MUTEX_VALIDATE_OBJECT(the_mutex, flags) |
Enumerations | |
enum | POSIX_Mutex_Protocol { POSIX_MUTEX_NO_PROTOCOL , POSIX_MUTEX_PRIORITY_INHERIT , POSIX_MUTEX_PRIORITY_CEILING } |
Supported POSIX mutex protocols. More... | |
Functions | |
Status_Control | _POSIX_Mutex_Seize_slow (POSIX_Mutex_Control *the_mutex, const Thread_queue_Operations *operations, Thread_Control *executing, const struct timespec *abstime, Thread_queue_Context *queue_context) |
int | _POSIX_Mutex_Lock_support (pthread_mutex_t *mutex, const struct timespec *abstime, Thread_queue_Enqueue_callout enqueue_callout) |
bool | _POSIX_Mutex_Auto_initialization (POSIX_Mutex_Control *the_mutex) |
Variables | |
const pthread_mutexattr_t | _POSIX_Mutex_Default_attributes |
Private Inlined Routines for POSIX Mutex's.
This include file contains the static inline implementation of the private inlined routines for POSIX mutex's.
#define POSIX_MUTEX_VALIDATE_OBJECT | ( | the_mutex, | |
flags | |||
) |
enum POSIX_Mutex_Protocol |
Supported POSIX mutex protocols.
Must be in synchronization with POSIX_Mutex_Control::protocol.
|
extern |
The default mutex attributes structure.