Home
last modified time | relevance | path

Searched refs:wait_queue_head_t (Results 1 – 5 of 5) sorted by relevance

/DragonOS-0.1.8/kernel/src/common/
Dwait_queue.h58 } wait_queue_head_t; typedef
77 struct wait_queue_head_t name = {0}; \
85 void wait_queue_head_init(wait_queue_head_t *wait_queue);
93 void wait_queue_sleep_with_node(wait_queue_head_t *q, wait_queue_node_t *wait);
102 void wait_queue_sleep_with_node_unlock(wait_queue_head_t *q, wait_queue_node_t *wait, void *lock);
110 void wait_queue_sleep_with_node_interriptible(wait_queue_head_t *q, wait_queue_node_t *wait);
118 void wait_queue_wakeup_on_stack(wait_queue_head_t *q, int64_t state);
Dcompletion.h13 wait_queue_head_t wait_queue;
/DragonOS-0.1.8/kernel/src/libs/
Dwait_queue_head.c11 void wait_queue_head_init(wait_queue_head_t *wait_queue) in wait_queue_head_init()
22 void wait_queue_sleep_with_node(wait_queue_head_t *q, wait_queue_node_t *wait) in wait_queue_sleep_with_node()
37 void wait_queue_sleep_with_node_unlock(wait_queue_head_t *q, wait_queue_node_t *wait, void *lock) in wait_queue_sleep_with_node_unlock()
53 void wait_queue_sleep_with_node_interriptible(wait_queue_head_t *q, wait_queue_node_t *wait) in wait_queue_sleep_with_node_interriptible()
69 void wait_queue_wakeup_on_stack(wait_queue_head_t *q, int64_t state) in wait_queue_wakeup_on_stack()
Dwait_queue.rs8 process_control_block, process_wakeup, wait_queue_head_t, PROC_INTERRUPTIBLE,
19 impl Default for wait_queue_head_t { implementation
/DragonOS-0.1.8/docs/kernel/sched/
Dc_waiting.md18 `wait_queue.h`中的等待队列的实现并没有把队列头独立出来,同时没有考虑为等待队列加锁。所以在后来的开发中加入了`wait_queue_head_t`的队列头实现,实质上就是链表+自旋锁。…
87 } wait_queue_head_t;
111 struct wait_queue_head_t m_wait_queue_head = {0};
120 | wait_queue_sleep_with_node(wait_queue_head_t *head, wait_queue_node_t *wait_node) | …
121 | wait_queue_sleep_with_node_unlock(wait_queue_head_t *q, wait_queue_node_t *wait, void *lock) …
122 | wait_queue_sleep_with_node_interriptible(wait_queue_head_t *q, wait_queue_node_t *wait) | 传入一个等待队…
127 …kfree掉了wait_node节点。对于在栈上的wait_node,您可以选择`wait_queue_wakeup_on_stack(wait_queue_head_t *q, int64_t …