|
void | _Thread_queue_Enqueue_do_nothing_extra (Thread_queue_Queue *queue, Thread_Control *the_thread, Per_CPU_Control *cpu_self, Thread_queue_Context *queue_context) |
| Does nothing. More...
|
|
void | _Thread_queue_Add_timeout_ticks (Thread_queue_Queue *queue, Thread_Control *the_thread, Per_CPU_Control *cpu_self, Thread_queue_Context *queue_context) |
| Adds timeout ticks of the queue to the thread. More...
|
|
void | _Thread_queue_Add_timeout_monotonic_timespec (Thread_queue_Queue *queue, Thread_Control *the_thread, Per_CPU_Control *cpu_self, Thread_queue_Context *queue_context) |
| Adds a monotonic timespec to the thread and sets the watchdog header to monotonic. More...
|
|
void | _Thread_queue_Add_timeout_realtime_timespec (Thread_queue_Queue *queue, Thread_Control *the_thread, Per_CPU_Control *cpu_self, Thread_queue_Context *queue_context) |
| Adds a monotonic timespec to the thread and sets the watchdog header to realtime. More...
|
|
void | _Thread_queue_Deadlock_status (Thread_Control *the_thread) |
| Sets the thread wait return code to STATUS_DEADLOCK. More...
|
|
void | _Thread_queue_Deadlock_fatal (Thread_Control *the_thread) |
| Results in an INTERNAL_ERROR_THREAD_QUEUE_DEADLOCK fatal error. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_initialize (Thread_queue_Context *queue_context) |
| Initializes a thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_thread_state (Thread_queue_Context *queue_context, States_Control thread_state) |
| Sets the thread state for the thread to enqueue in the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_timeout_ticks (Thread_queue_Context *queue_context, Watchdog_Interval ticks) |
| Sets the timeout ticks in the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_timeout_argument (Thread_queue_Context *queue_context, const void *arg) |
| Sets the timeout argument in the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_enqueue_callout (Thread_queue_Context *queue_context, Thread_queue_Enqueue_callout enqueue_callout) |
| Sets the enqueue callout in the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_enqueue_do_nothing_extra (Thread_queue_Context *queue_context) |
| Sets the do nothing enqueue callout in the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_enqueue_timeout_ticks (Thread_queue_Context *queue_context, Watchdog_Interval ticks) |
| Sets the enqueue callout to add a relative monotonic timeout in ticks. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_enqueue_timeout_monotonic_timespec (Thread_queue_Context *queue_context, const struct timespec *abstime) |
| Sets the enqueue callout to add an absolute monotonic timeout in timespec format. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_enqueue_timeout_realtime_timespec (Thread_queue_Context *queue_context, const struct timespec *abstime) |
| Sets the enqueue callout to add an absolute realtime timeout in timespec format. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_deadlock_callout (Thread_queue_Context *queue_context, Thread_queue_Deadlock_callout deadlock_callout) |
| Sets the deadlock callout in the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_clear_priority_updates (Thread_queue_Context *queue_context) |
| Clears the priority update count of the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE size_t | _Thread_queue_Context_save_priority_updates (Thread_queue_Context *queue_context) |
| Returns the priority update count of the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_restore_priority_updates (Thread_queue_Context *queue_context, size_t update_count) |
| Sets the priority update count of the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_add_priority_update (Thread_queue_Context *queue_context, Thread_Control *the_thread) |
| Adds a priority update of the thread to the thread queue context. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Context_set_ISR_level (Thread_queue_Context *queue_context, ISR_Level level) |
| Sets the thread queue context ISR level. More...
|
|
RTEMS_INLINE_ROUTINE Per_CPU_Control * | _Thread_queue_Dispatch_disable (Thread_queue_Context *queue_context) |
| Disables dispatching in a critical section. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Heads_initialize (Thread_queue_Heads *heads) |
| Initializes the thread queue heads. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Queue_initialize (Thread_queue_Queue *queue, const char *name) |
| Initializes the thread queue queue with the given name. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Queue_do_acquire_critical (Thread_queue_Queue *queue, ISR_lock_Context *lock_context) |
| Acquires the thread queue queue in a critical section. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Queue_release_critical (Thread_queue_Queue *queue, ISR_lock_Context *lock_context) |
| Releases the thread queue queue in a critical section. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Queue_release (Thread_queue_Queue *queue, ISR_lock_Context *lock_context) |
| Releases the thread queue queue and enables interrupts. More...
|
|
size_t | _Thread_queue_Queue_get_name_and_id (const Thread_queue_Queue *queue, char *buffer, size_t buffer_size, Objects_Id *id) |
| Copies the thread queue name to the specified buffer. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Do_acquire_critical (Thread_queue_Control *the_thread_queue, ISR_lock_Context *lock_context) |
| Acquires the thread queue control in a critical section. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Acquire_critical (Thread_queue_Control *the_thread_queue, Thread_queue_Context *queue_context) |
| Acquires the thread queue control in a critical section. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Acquire (Thread_queue_Control *the_thread_queue, Thread_queue_Context *queue_context) |
| Acquires the thread queue control in a critical section. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Do_release_critical (Thread_queue_Control *the_thread_queue, ISR_lock_Context *lock_context) |
| Checks if the thread queue control is the owner of the lock. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Release_critical (Thread_queue_Control *the_thread_queue, Thread_queue_Context *queue_context) |
| Releases the thread queue control in a critical section. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Release (Thread_queue_Control *the_thread_queue, Thread_queue_Context *queue_context) |
| Releases the thread queue control and enables interrupts. More...
|
|
Thread_Control * | _Thread_queue_Do_dequeue (Thread_queue_Control *the_thread_queue, const Thread_queue_Operations *operations) |
| Dequeues the first thread waiting on the thread queue and returns it. More...
|
|
void | _Thread_queue_Enqueue (Thread_queue_Queue *queue, const Thread_queue_Operations *operations, Thread_Control *the_thread, Thread_queue_Context *queue_context) |
| Blocks the thread and places it on the thread queue. More...
|
|
bool | _Thread_queue_Extract_locked (Thread_queue_Queue *queue, const Thread_queue_Operations *operations, Thread_Control *the_thread, Thread_queue_Context *queue_context) |
| Extracts the thread from the thread queue, restores the default wait operations and restores the default thread lock. More...
|
|
void | _Thread_queue_Unblock_critical (bool unblock, Thread_queue_Queue *queue, Thread_Control *the_thread, ISR_lock_Context *lock_context) |
| Unblocks the thread which was on the thread queue before. More...
|
|
void | _Thread_queue_Extract_critical (Thread_queue_Queue *queue, const Thread_queue_Operations *operations, Thread_Control *the_thread, Thread_queue_Context *queue_context) |
| Extracts the thread from the thread queue and unblocks it. More...
|
|
void | _Thread_queue_Extract (Thread_Control *the_thread) |
| Extracts thread from thread queue. More...
|
|
void | _Thread_queue_Extract_with_proxy (Thread_Control *the_thread) |
| Extracts the_thread from the_thread_queue. More...
|
|
void | _Thread_queue_Surrender (Thread_queue_Queue *queue, Thread_queue_Heads *heads, Thread_Control *previous_owner, Thread_queue_Context *queue_context, const Thread_queue_Operations *operations) |
| Surrenders the thread queue previously owned by the thread to the first enqueued thread. More...
|
|
RTEMS_INLINE_ROUTINE bool | _Thread_queue_Is_empty (const Thread_queue_Queue *queue) |
| Checks if the thread queue queue is empty. More...
|
|
RTEMS_INLINE_ROUTINE Thread_Control * | _Thread_queue_First_locked (Thread_queue_Control *the_thread_queue, const Thread_queue_Operations *operations) |
| Returns the first thread on the thread queue if it exists, otherwise NULL . More...
|
|
Thread_Control * | _Thread_queue_First (Thread_queue_Control *the_thread_queue, const Thread_queue_Operations *operations) |
| Returns the first thread on the thread queue if it exists, otherwise NULL . More...
|
|
Thread_Control * | _Thread_queue_Flush_default_filter (Thread_Control *the_thread, Thread_queue_Queue *queue, Thread_queue_Context *queue_context) |
| Default thread queue flush filter function. More...
|
|
Thread_Control * | _Thread_queue_Flush_status_unavailable (Thread_Control *the_thread, Thread_queue_Queue *queue, Thread_queue_Context *queue_context) |
| Status unavailable thread queue flush filter function. More...
|
|
Thread_Control * | _Thread_queue_Flush_status_object_was_deleted (Thread_Control *the_thread, Thread_queue_Queue *queue, Thread_queue_Context *queue_context) |
| Status object was deleted thread queue flush filter function. More...
|
|
size_t | _Thread_queue_Flush_critical (Thread_queue_Queue *queue, const Thread_queue_Operations *operations, Thread_queue_Flush_filter filter, Thread_queue_Context *queue_context) |
| Unblocks all threads enqueued on the thread queue. More...
|
|
void | _Thread_queue_Initialize (Thread_queue_Control *the_thread_queue, const char *name) |
| Initializes the thread queue control to the given name. More...
|
|
RTEMS_INLINE_ROUTINE void | _Thread_queue_Destroy (Thread_queue_Control *the_thread_queue) |
| Destroys the thread queue. More...
|
|
void | _Thread_queue_Object_initialize (Thread_queue_Control *the_thread_queue) |
| Initializes a thread queue embedded in an object with identifier. More...
|
|
Constants and Structures Associated with the Manipulation of Objects.
This include file contains all the constants and structures associated with the manipulation of objects.