Lines Matching defs:wait

25 #include <linux/wait.h>
115 * Wait queue item that will be linked to the target file wait
118 wait_queue_entry_t wait;
120 /* The wait queue head that linked the "wait" wait queue item */
157 /* List containing poll wait queues */
367 return container_of(p, struct eppoll_entry, wait);
370 /* Get the "struct epitem" from a wait queue pointer */
373 return container_of(p, struct eppoll_entry, wait)->base;
474 * the use of wait queues used by epoll is done in a very controlled
489 * the waiters on its poll wait list (efd2). So it calls ep_poll_safewake()
559 remove_wait_queue(whead, &pwq->wait);
730 * Removes poll wait queue hooks.
841 static __poll_t __ep_eventpoll_poll(struct file *file, poll_table *wait, int depth)
851 /* Insert inside our poll wait queue */
852 poll_wait(file, &ep->poll_wait, wait);
898 static __poll_t ep_eventpoll_poll(struct file *file, poll_table *wait)
900 return __ep_eventpoll_poll(file, wait, 0);
1150 * This is the callback that is passed to the wait queue wakeup
1162 * with several wait queues entries. Plural wakeup from different CPUs of a
1163 * single wait queue is serialized by wq.lock, but the case when multiple wait
1167 static int ep_poll_callback(wait_queue_entry_t *wait, unsigned mode, int sync, void *key)
1170 struct epitem *epi = ep_item_from_wait(wait);
1214 * Wake up ( if active ) both the eventpoll wait list and the ->poll()
1215 * wait list.
1255 list_del_init(&wait->entry);
1260 * nothing protects ep/epi or even wait.
1262 smp_store_release(&ep_pwq_from_wait(wait)->whead, NULL);
1269 * This is the callback that is used to add our wait queue to the
1288 init_waitqueue_func_entry(&pwq->wait, ep_poll_callback);
1292 add_wait_queue_exclusive(whead, &pwq->wait);
1294 add_wait_queue(whead, &pwq->wait);
1433 * wait for ep_pm_stay_awake_rcu to finish, synchronize_rcu is
1564 * We have to check if something went wrong during the poll wait queue
1565 * install process. Namely an allocation for a wait queue failed due
1830 wait_queue_entry_t wait;
1841 * Avoid the unnecessary trip to the wait queue loop, if the
1851 * lock and will add to the wait queue. For cases with a zero
1881 * thus wait entry is removed from the wait queue on each
1891 * unconditionally removes, because we don't reuse the wait
1896 init_wait(&wait);
1897 wait.func = ep_autoremove_wake_function;
1916 __add_wait_queue_exclusive(&ep->wq, &wait);
1927 * If timed out and still on the wait queue, recheck eavail
1932 if (!list_empty_careful(&wait.entry)) {
1935 * If the thread timed out and is not on the wait queue,
1938 * Thus, when wait.entry is empty, it needs to harvest
1942 eavail = list_empty(&wait.entry);
1943 __remove_wait_queue(&ep->wq, &wait);
2280 * Implement the event wait interface for the eventpoll file. It is the kernel
2335 * Implement the event wait interface for the eventpoll file. It is the kernel
2345 * If the caller wants a certain signal mask to be set during the wait,
2397 * If the caller wants a certain signal mask to be set during the wait,