Lines Matching refs:timeout
43 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_is_timeout_noseq() local
46 return !timeout->off || data->flags & IORING_TIMEOUT_MULTISHOT; in io_is_timeout_noseq()
57 static inline bool io_timeout_finish(struct io_timeout *timeout, in io_timeout_finish() argument
63 if (!timeout->off || (timeout->repeats && --timeout->repeats)) in io_timeout_finish()
74 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_timeout_complete() local
78 if (!io_timeout_finish(timeout, data)) { in io_timeout_complete()
82 list_add(&timeout->list, ctx->timeout_list.prev); in io_timeout_complete()
98 struct io_timeout *timeout; in io_flush_killed_timeouts() local
101 timeout = list_first_entry(list, struct io_timeout, list); in io_flush_killed_timeouts()
102 list_del_init(&timeout->list); in io_flush_killed_timeouts()
103 req = cmd_to_io_kiocb(timeout); in io_flush_killed_timeouts()
118 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_kill_timeout() local
122 list_move_tail(&timeout->list, list); in io_kill_timeout()
128 struct io_timeout *timeout, *tmp; in io_flush_timeouts() local
135 list_for_each_entry_safe(timeout, tmp, &ctx->timeout_list, list) { in io_flush_timeouts()
136 struct io_kiocb *req = cmd_to_io_kiocb(timeout); in io_flush_timeouts()
149 events_needed = timeout->target_seq - ctx->cq_last_tm_flush; in io_flush_timeouts()
245 struct io_timeout *timeout = io_kiocb_to_cmd(link, struct io_timeout); in __io_disarm_linked_timeout() local
248 timeout->head = NULL; in __io_disarm_linked_timeout()
250 list_del(&timeout->list); in __io_disarm_linked_timeout()
262 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_timeout_fn() local
267 list_del_init(&timeout->list); in io_timeout_fn()
285 struct io_timeout *timeout; in io_timeout_extract() local
289 list_for_each_entry(timeout, &ctx->timeout_list, list) { in io_timeout_extract()
290 struct io_kiocb *tmp = cmd_to_io_kiocb(timeout); in io_timeout_extract()
303 timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_timeout_extract()
304 list_del_init(&timeout->list); in io_timeout_extract()
326 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_req_task_link_timeout() local
327 struct io_kiocb *prev = timeout->prev; in io_req_task_link_timeout()
355 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_link_timeout_fn() local
360 prev = timeout->head; in io_link_timeout_fn()
361 timeout->head = NULL; in io_link_timeout_fn()
372 list_del(&timeout->list); in io_link_timeout_fn()
373 timeout->prev = prev; in io_link_timeout_fn()
402 struct io_timeout *timeout; in io_linked_timeout_update() local
405 list_for_each_entry(timeout, &ctx->ltimeout_list, list) { in io_linked_timeout_update()
406 struct io_kiocb *tmp = cmd_to_io_kiocb(timeout); in io_linked_timeout_update()
430 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_timeout_update() local
436 timeout->off = 0; /* noseq */ in io_timeout_update()
440 list_add_tail(&timeout->list, &ctx->timeout_list); in io_timeout_update()
519 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in __io_timeout_prep() local
540 INIT_LIST_HEAD(&timeout->list); in __io_timeout_prep()
541 timeout->off = off; in __io_timeout_prep()
548 timeout->repeats = 0; in __io_timeout_prep()
550 timeout->repeats = off; in __io_timeout_prep()
575 timeout->head = link->last; in __io_timeout_prep()
597 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_timeout() local
601 u32 tail, off = timeout->off; in io_timeout()
616 timeout->target_seq = tail + off; in io_timeout()
639 list_add(&timeout->list, entry); in io_timeout()
647 struct io_timeout *timeout = io_kiocb_to_cmd(req, struct io_timeout); in io_queue_linked_timeout() local
655 if (timeout->head) { in io_queue_linked_timeout()
660 list_add_tail(&timeout->list, &ctx->ltimeout_list); in io_queue_linked_timeout()
689 struct io_timeout *timeout, *tmp; in io_kill_timeouts() local
698 list_for_each_entry_safe(timeout, tmp, &ctx->timeout_list, list) { in io_kill_timeouts()
699 struct io_kiocb *req = cmd_to_io_kiocb(timeout); in io_kill_timeouts()