Searched refs:wait_queue_node_t (Results 1 – 11 of 11) sorted by relevance
/DragonOS-0.1.3/kernel/src/common/ |
D | wait_queue.h | 16 } wait_queue_node_t; typedef 24 void wait_queue_init(wait_queue_node_t *wait_queue, struct process_control_block *pcb); 31 void wait_queue_sleep_on(wait_queue_node_t *wait_queue_head); 38 void wait_queue_sleep_on_unlock(wait_queue_node_t *wait_queue_head, void *lock); 44 void wait_queue_sleep_on_interriptible(wait_queue_node_t *wait_queue_head); 52 void wait_queue_wakeup(wait_queue_node_t *wait_queue_head, int64_t state); 61 wait_queue_node_t name = {0}; \ 65 wait_queue_node_t name = {0}; \ 69 wait_queue_node_t *wait = (wait_queue_node_t *)kzalloc(sizeof(wait_queue_node_t), 0); \ 73 wait_queue_node_t *wait = (wait_queue_node_t *)kzalloc(sizeof(wait_queue_node_t), 0); \ [all …]
|
D | blk_types.h | 47 wait_queue_node_t wait_queue; 56 wait_queue_node_t wait_queue_list;
|
D | semaphore.h | 24 wait_queue_node_t wait_queue;
|
/DragonOS-0.1.3/kernel/src/libs/ |
D | wait_queue.c | 13 void wait_queue_init(wait_queue_node_t *wait_queue, struct process_control_block *pcb) in wait_queue_init() 24 void wait_queue_sleep_on(wait_queue_node_t *wait_queue_head) in wait_queue_sleep_on() 26 wait_queue_node_t *wait = (wait_queue_node_t *)kzalloc(sizeof(wait_queue_node_t), 0); in wait_queue_sleep_on() 39 void wait_queue_sleep_on_unlock(wait_queue_node_t *wait_queue_head, in wait_queue_sleep_on_unlock() 42 wait_queue_node_t *wait = (wait_queue_node_t *)kzalloc(sizeof(wait_queue_node_t), 0); in wait_queue_sleep_on_unlock() 55 void wait_queue_sleep_on_interriptible(wait_queue_node_t *wait_queue_head) in wait_queue_sleep_on_interriptible() 57 wait_queue_node_t *wait = (wait_queue_node_t *)kzalloc(sizeof(wait_queue_node_t), 0); in wait_queue_sleep_on_interriptible() 71 void wait_queue_wakeup(wait_queue_node_t *wait_queue_head, int64_t state) in wait_queue_wakeup() 75 …wait_queue_node_t *wait = container_of(list_next(&wait_queue_head->wait_list), wait_queue_node_t, … in wait_queue_wakeup()
|
D | wait_queue_head.c | 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() 74 wait_queue_node_t *wait = container_of(list_next(&q->wait_list), wait_queue_node_t, wait_list); in wait_queue_wakeup_on_stack()
|
D | semaphore.c | 13 wait_queue_node_t wait; in semaphore_down() 35 …wait_queue_node_t *wq = container_of(list_next(&sema->wait_queue.wait_list), wait_queue_node_t, wa… in semaphore_up()
|
/DragonOS-0.1.3/docs/kernel/sched/ |
D | waiting.md | 12 …后来的开发中加入了`wait_queue_head_t`的队列头实现,实质上就是链表+自旋锁。它与`wait_queue.h`中的队列`wait_queue_node_t`是兼容的,当你使用`st… 23   要使用wait_queue,您需要`#include<common/wait_queue.h>`,并创建一个`wait_queue_node_t`类型的变量,作为等待队列的头… 30 } wait_queue_node_t; 36 wait_queue_node_t wq_keyboard_interrupt_received; 43   函数`wait_queue_init(wait_queue_node_t *wait_queue, struct process_control_block *pcb)`提供… 61   您可以使用`void wait_queue_wakeup(wait_queue_node_t * wait_queue_head, int64_t state);`函数,从指… 114 | wait_queue_sleep_with_node(wait_queue_head_t *head, wait_queue_node_t *wait_node) | … 115 | wait_queue_sleep_with_node_unlock(wait_queue_head_t *q, wait_queue_node_t *wait, void *lock) … 116 | wait_queue_sleep_with_node_interriptible(wait_queue_head_t *q, wait_queue_node_t *wait) | 传入一个等待队…
|
/DragonOS-0.1.3/kernel/src/ipc/ |
D | pipe.c | 15 wait_queue_node_t read_wait_queue; 16 wait_queue_node_t write_wait_queue;
|
/DragonOS-0.1.3/kernel/src/process/ |
D | proc-types.h | 120 wait_queue_node_t wait_child_proc_exit; // 子进程退出等待队列
|
/DragonOS-0.1.3/kernel/src/driver/keyboard/ |
D | ps2_keyboard.c | 16 static wait_queue_node_t ps2_keyboard_wait_queue;
|
/DragonOS-0.1.3/kernel/src/driver/disk/ahci/ |
D | ahci.c | 600 …wait_queue_node_t *wait_queue_tmp = container_of(list_next(&ahci_req_queue.wait_queue_list.wait_li… in ahci_query_disk()
|