PatchworkOS
Loading...
Searching...
No Matches
wait_thread_ctx_t Struct Reference

Per-thread wait context. More...

#include <wait.h>

Data Fields

list_t entries
 List of wait entries, one for each wait queue the thread is waiting on.
 
errno_t err
 Error number set when unblocking the thread, EOK for no error.
 
clock_t deadline
 Deadline for timeout, CLOCKS_NEVER for no timeout.
 
wait_cpu_ctx_tcpu
 The wait cpu context of the cpu the thread is blocked on.
 

Detailed Description

Per-thread wait context.

Each thread stores all wait queues it is currently waiting on in here to allow blocking on multiple wait queues, since if one queue unblocks the thread must be removed from all other queues as well.

Definition at line 206 of file wait.h.

Field Documentation

◆ cpu

wait_cpu_ctx_t* wait_thread_ctx_t::cpu

The wait cpu context of the cpu the thread is blocked on.

Definition at line 211 of file wait.h.

Referenced by wait_block_finalize(), wait_block_setup(), wait_thread_ctx_init(), wait_timer_handler(), and wait_unblock_thread().

◆ deadline

clock_t wait_thread_ctx_t::deadline

Deadline for timeout, CLOCKS_NEVER for no timeout.

Definition at line 210 of file wait.h.

Referenced by wait_block_finalize(), wait_block_setup(), wait_thread_ctx_init(), and wait_timer_handler().

◆ entries

list_t wait_thread_ctx_t::entries

List of wait entries, one for each wait queue the thread is waiting on.

Definition at line 208 of file wait.h.

Referenced by wait_block_setup(), wait_remove_wait_entries(), wait_thread_ctx_init(), and wait_unblock().

◆ err

errno_t wait_thread_ctx_t::err

Error number set when unblocking the thread, EOK for no error.

Definition at line 209 of file wait.h.

Referenced by wait_block_commit(), wait_block_setup(), wait_remove_wait_entries(), and wait_thread_ctx_init().


The documentation for this struct was generated from the following file: