/linux-6.6.21/kernel/locking/ |
D | rwsem.c | 413 struct wake_q_head *wake_q) in rwsem_mark_wake() argument 436 wake_q_add(wake_q, waiter->task); in rwsem_mark_wake() 566 wake_q_add_safe(wake_q, tsk); in rwsem_mark_wake() 578 struct wake_q_head *wake_q) in rwsem_del_wake_waiter() argument 583 wake_q_init(wake_q); in rwsem_del_wake_waiter() 591 rwsem_mark_wake(sem, RWSEM_WAKE_ANY, wake_q); in rwsem_del_wake_waiter() 593 if (!wake_q_empty(wake_q)) in rwsem_del_wake_waiter() 594 wake_up_q(wake_q); in rwsem_del_wake_waiter() 976 struct wake_q_head *wake_q) in rwsem_cond_wake_waiter() argument 989 rwsem_mark_wake(sem, wake_type, wake_q); in rwsem_cond_wake_waiter() [all …]
|
D | mutex.c | 904 DEFINE_WAKE_Q(wake_q); in __mutex_unlock_slowpath() 943 wake_q_add(&wake_q, next); in __mutex_unlock_slowpath() 951 wake_up_q(&wake_q); in __mutex_unlock_slowpath()
|
/linux-6.6.21/ipc/ |
D | sem.c | 787 struct wake_q_head *wake_q) in wake_up_sem_queue_prepare() argument 796 wake_q_add_safe(wake_q, sleeper); in wake_up_sem_queue_prepare() 855 struct wake_q_head *wake_q) in wake_const_ops() argument 874 wake_up_sem_queue_prepare(q, error, wake_q); in wake_const_ops() 894 int nsops, struct wake_q_head *wake_q) in do_smart_wakeup_zero() argument 907 semop_completed |= wake_const_ops(sma, num, wake_q); in do_smart_wakeup_zero() 918 semop_completed |= wake_const_ops(sma, i, wake_q); in do_smart_wakeup_zero() 927 semop_completed |= wake_const_ops(sma, -1, wake_q); in do_smart_wakeup_zero() 949 static int update_queue(struct sem_array *sma, int semnum, struct wake_q_head *wake_q) in update_queue() argument 986 do_smart_wakeup_zero(sma, q->sops, q->nsops, wake_q); in update_queue() [all …]
|
D | msg.c | 213 struct wake_q_head *wake_q, bool kill) in ss_wakeup() argument 245 wake_q_add(wake_q, mss->tsk); in ss_wakeup() 250 struct wake_q_head *wake_q) in expunge_all() argument 261 wake_q_add_safe(wake_q, r_tsk); in expunge_all() 279 DEFINE_WAKE_Q(wake_q); in freeque() 281 expunge_all(msq, -EIDRM, &wake_q); in freeque() 282 ss_wakeup(msq, &wake_q, true); in freeque() 285 wake_up_q(&wake_q); in freeque() 432 DEFINE_WAKE_Q(wake_q); in msgctl_down() 452 expunge_all(msq, -EAGAIN, &wake_q); in msgctl_down() [all …]
|
D | mqueue.c | 1017 static inline void __pipelined_op(struct wake_q_head *wake_q, in __pipelined_op() argument 1028 wake_q_add_safe(wake_q, task); in __pipelined_op() 1034 static inline void pipelined_send(struct wake_q_head *wake_q, in pipelined_send() argument 1040 __pipelined_op(wake_q, info, receiver); in pipelined_send() 1045 static inline void pipelined_receive(struct wake_q_head *wake_q, in pipelined_receive() argument 1058 __pipelined_op(wake_q, info, sender); in pipelined_receive() 1074 DEFINE_WAKE_Q(wake_q); in do_mq_timedsend() 1158 pipelined_send(&wake_q, info, msg_ptr, receiver); in do_mq_timedsend() 1170 wake_up_q(&wake_q); in do_mq_timedsend() 1256 DEFINE_WAKE_Q(wake_q); in do_mq_timedreceive() [all …]
|
/linux-6.6.21/kernel/futex/ |
D | waitwake.c | 115 void futex_wake_mark(struct wake_q_head *wake_q, struct futex_q *q) in futex_wake_mark() argument 137 wake_q_add_safe(wake_q, p); in futex_wake_mark() 149 DEFINE_WAKE_Q(wake_q); in futex_wake() 177 futex_wake_mark(&wake_q, this); in futex_wake() 184 wake_up_q(&wake_q); in futex_wake() 245 DEFINE_WAKE_Q(wake_q); in futex_wake_op() 292 futex_wake_mark(&wake_q, this); in futex_wake_op() 306 futex_wake_mark(&wake_q, this); in futex_wake_op() 316 wake_up_q(&wake_q); in futex_wake_op()
|
D | requeue.c | 372 DEFINE_WAKE_Q(wake_q); in futex_requeue() 594 futex_wake_mark(&wake_q, this); in futex_requeue() 674 wake_up_q(&wake_q); in futex_requeue()
|
D | futex.h | 147 extern void futex_wake_mark(struct wake_q_head *wake_q, struct futex_q *q);
|
/linux-6.6.21/include/linux/ |
D | sched.h | 1137 struct wake_q_node wake_q; member
|
/linux-6.6.21/kernel/sched/ |
D | core.c | 950 struct wake_q_node *node = &task->wake_q; in __wake_q_add() 1020 task = container_of(node, struct task_struct, wake_q); in wake_up_q() 1023 task->wake_q.next = NULL; in wake_up_q()
|
/linux-6.6.21/kernel/ |
D | fork.c | 1166 tsk->wake_q.next = NULL; in dup_task_struct()
|