Home
last modified time | relevance | path

Searched refs:waiter (Results 1 – 3 of 3) sorted by relevance

/lib/
Drwsem-spinlock.c67 struct rwsem_waiter *waiter; in __rwsem_do_wake() local
71 waiter = list_entry(sem->wait_list.next, struct rwsem_waiter, list); in __rwsem_do_wake()
73 if (waiter->type == RWSEM_WAITING_FOR_WRITE) { in __rwsem_do_wake()
77 wake_up_process(waiter->task); in __rwsem_do_wake()
84 struct list_head *next = waiter->list.next; in __rwsem_do_wake()
86 list_del(&waiter->list); in __rwsem_do_wake()
87 tsk = waiter->task; in __rwsem_do_wake()
89 waiter->task = NULL; in __rwsem_do_wake()
95 waiter = list_entry(next, struct rwsem_waiter, list); in __rwsem_do_wake()
96 } while (waiter->type != RWSEM_WAITING_FOR_WRITE); in __rwsem_do_wake()
[all …]
Drwsem.c64 struct rwsem_waiter *waiter; in __rwsem_do_wake() local
69 waiter = list_entry(sem->wait_list.next, struct rwsem_waiter, list); in __rwsem_do_wake()
70 if (waiter->type == RWSEM_WAITING_FOR_WRITE) { in __rwsem_do_wake()
77 wake_up_process(waiter->task); in __rwsem_do_wake()
108 if (waiter->list.next == &sem->wait_list) in __rwsem_do_wake()
111 waiter = list_entry(waiter->list.next, in __rwsem_do_wake()
114 } while (waiter->type != RWSEM_WAITING_FOR_WRITE); in __rwsem_do_wake()
117 if (waiter->type != RWSEM_WAITING_FOR_WRITE) in __rwsem_do_wake()
127 waiter = list_entry(next, struct rwsem_waiter, list); in __rwsem_do_wake()
128 next = waiter->list.next; in __rwsem_do_wake()
[all …]
Dklist.c186 struct klist_waiter *waiter, *tmp; in klist_release() local
192 list_for_each_entry_safe(waiter, tmp, &klist_remove_waiters, list) { in klist_release()
193 if (waiter->node != n) in klist_release()
196 list_del(&waiter->list); in klist_release()
197 waiter->woken = 1; in klist_release()
199 wake_up_process(waiter->process); in klist_release()
241 struct klist_waiter waiter; in klist_remove() local
243 waiter.node = n; in klist_remove()
244 waiter.process = current; in klist_remove()
245 waiter.woken = 0; in klist_remove()
[all …]