RTEMS
|
Definitions for Multiprocessor Resource Sharing Protocol (MrsP) Implementation. More...
#include <rtems/score/mrsp.h>
#include <rtems/score/assert.h>
#include <rtems/score/status.h>
#include <rtems/score/threadqimpl.h>
#include <rtems/score/watchdogimpl.h>
Go to the source code of this file.
Macros | |
#define | MRSP_TQ_OPERATIONS &_Thread_queue_Operations_priority_inherit |
Functions | |
static __inline__ void | _MRSP_Acquire_critical (MRSP_Control *mrsp, Thread_queue_Context *queue_context) |
Acquires critical accordingt to MrsP. More... | |
static __inline__ void | _MRSP_Release (MRSP_Control *mrsp, Thread_queue_Context *queue_context) |
Releases according to MrsP. More... | |
static __inline__ Thread_Control * | _MRSP_Get_owner (const MRSP_Control *mrsp) |
Gets owner of the MrsP control. More... | |
static __inline__ void | _MRSP_Set_owner (MRSP_Control *mrsp, Thread_Control *owner) |
Sets owner of the MrsP control. More... | |
static __inline__ Priority_Control | _MRSP_Get_priority (const MRSP_Control *mrsp, const Scheduler_Control *scheduler) |
Gets priority of the MrsP control. More... | |
static __inline__ void | _MRSP_Set_priority (MRSP_Control *mrsp, const Scheduler_Control *scheduler, Priority_Control new_priority) |
Sets priority of the MrsP control. More... | |
static __inline__ Status_Control | _MRSP_Raise_priority (MRSP_Control *mrsp, Thread_Control *thread, Priority_Node *priority_node, Thread_queue_Context *queue_context) |
Adds the priority to the given thread. More... | |
static __inline__ void | _MRSP_Remove_priority (Thread_Control *thread, Priority_Node *priority_node, Thread_queue_Context *queue_context) |
Removes the priority from the given thread. More... | |
static __inline__ void | _MRSP_Replace_priority (MRSP_Control *mrsp, Thread_Control *thread, Priority_Node *ceiling_priority) |
Replaces the given priority node with the ceiling priority of the MrsP control. More... | |
static __inline__ Status_Control | _MRSP_Claim_ownership (MRSP_Control *mrsp, Thread_Control *executing, Thread_queue_Context *queue_context) |
Claims ownership of the MrsP control. More... | |
static __inline__ Status_Control | _MRSP_Initialize (MRSP_Control *mrsp, const Scheduler_Control *scheduler, Priority_Control ceiling_priority, Thread_Control *executing, bool initially_locked) |
Initializes a MrsP control. More... | |
static __inline__ Status_Control | _MRSP_Wait_for_ownership (MRSP_Control *mrsp, Thread_Control *executing, Thread_queue_Context *queue_context) |
Waits for the ownership of the MrsP control. More... | |
static __inline__ Status_Control | _MRSP_Seize (MRSP_Control *mrsp, Thread_Control *executing, bool wait, Thread_queue_Context *queue_context) |
Seizes the MrsP control. More... | |
static __inline__ Status_Control | _MRSP_Surrender (MRSP_Control *mrsp, Thread_Control *executing, Thread_queue_Context *queue_context) |
Surrenders the MrsP control. More... | |
static __inline__ Status_Control | _MRSP_Can_destroy (MRSP_Control *mrsp) |
Checks if the MrsP control can be destroyed. More... | |
static __inline__ void | _MRSP_Destroy (MRSP_Control *mrsp, Thread_queue_Context *queue_context) |
Destroys the MrsP control. More... | |
Definitions for Multiprocessor Resource Sharing Protocol (MrsP) Implementation.
Definition in file mrspimpl.h.