Lines Matching defs:wait
216 * blk_mq_wait_quiesce_done() - wait until in-progress quiesce is done
217 * @set: tag_set to wait on
234 * blk_mq_quiesce_queue() - wait until all ongoing dispatches have finished
245 /* nothing to wait for non-mq queues */
1323 * for execution. Don't wait for completion.
1359 struct blk_rq_wait *wait = rq->end_io_data;
1361 wait->ret = ret;
1362 complete(&wait->done);
1376 static void blk_rq_poll_completion(struct request *rq, struct completion *wait)
1381 } while (!completion_done(wait));
1391 * for execution and wait for completion.
1397 struct blk_rq_wait wait = {
1398 .done = COMPLETION_INITIALIZER_ONSTACK(wait.done),
1404 rq->end_io_data = &wait;
1412 blk_rq_poll_completion(rq, &wait.done);
1421 while (!wait_for_completion_io_timeout(&wait.done,
1425 wait_for_completion_io(&wait.done);
1428 return wait.ret;
1667 * uses srcu or rcu, wait for a synchronization point to
1806 static int blk_mq_dispatch_wake(wait_queue_entry_t *wait, unsigned mode,
1811 hctx = container_of(wait, struct blk_mq_hw_ctx, dispatch_wait);
1814 if (!list_empty(&wait->entry)) {
1817 list_del_init(&wait->entry);
1838 wait_queue_entry_t *wait;
1847 * allocation failure and adding the hardware queue to the wait
1856 wait = &hctx->dispatch_wait;
1857 if (!list_empty_careful(&wait->entry))
1864 wq = &bt_wait_ptr(sbq, hctx)->wait;
1868 if (!list_empty(&wait->entry)) {
1875 wait->flags &= ~WQ_FLAG_EXCLUSIVE;
1876 __add_wait_queue(wq, wait);
1882 * Order adding us to wait queue and allocating driver tag.
1888 * Otherwise, re-order of adding wait queue and getting driver tag
1890 * the waitqueue_active() may not observe us in wait queue.
1896 * allocation failure and adding the hardware queue to the wait
1907 * We got a tag, remove ourselves from the wait queue to ensure
1910 list_del_init(&wait->entry);
2244 * @msecs: Milliseconds of delay to wait before running the queue.
2354 * @msecs: Milliseconds of delay to wait before running the queues.
3547 * Try to grab a reference to the queue and wait for any outstanding