Lines Matching refs:node
252 struct llist_node *node = llist_del_all(&ctx->fallback_llist); in io_fallback_req_func() local
258 llist_for_each_entry_safe(req, tmp, node, io_task_work.node) in io_fallback_req_func()
1032 struct llist_node *io_handle_tw_list(struct llist_node *node, in io_handle_tw_list() argument
1040 struct llist_node *next = node->next; in io_handle_tw_list()
1041 struct io_kiocb *req = container_of(node, struct io_kiocb, in io_handle_tw_list()
1042 io_task_work.node); in io_handle_tw_list()
1053 node = next; in io_handle_tw_list()
1060 } while (node && *count < max_entries); in io_handle_tw_list()
1063 return node; in io_handle_tw_list()
1066 static __cold void __io_fallback_tw(struct llist_node *node, bool sync) in __io_fallback_tw() argument
1071 while (node) { in __io_fallback_tw()
1072 req = container_of(node, struct io_kiocb, io_task_work.node); in __io_fallback_tw()
1073 node = node->next; in __io_fallback_tw()
1083 if (llist_add(&req->io_task_work.node, &last_ctx->fallback_llist)) in __io_fallback_tw()
1096 struct llist_node *node = llist_del_all(&tctx->task_list); in io_fallback_tw() local
1098 __io_fallback_tw(node, sync); in io_fallback_tw()
1105 struct llist_node *node; in tctx_task_work_run() local
1112 node = llist_del_all(&tctx->task_list); in tctx_task_work_run()
1113 if (node) { in tctx_task_work_run()
1114 node = llist_reverse_order(node); in tctx_task_work_run()
1115 node = io_handle_tw_list(node, count, max_entries); in tctx_task_work_run()
1123 return node; in tctx_task_work_run()
1162 io_task_work.node); in io_req_local_work_add()
1179 req->io_task_work.node.next = head; in io_req_local_work_add()
1181 &req->io_task_work.node)); in io_req_local_work_add()
1214 if (!llist_add(&req->io_task_work.node, &tctx->task_list)) in io_req_normal_work_add()
1249 struct llist_node *node = llist_del_all(&ctx->work_llist); in io_move_task_work_from_local() local
1251 __io_fallback_tw(node, false); in io_move_task_work_from_local()
1252 node = llist_del_all(&ctx->retry_llist); in io_move_task_work_from_local()
1253 __io_fallback_tw(node, false); in io_move_task_work_from_local()
1268 static int __io_run_local_work_loop(struct llist_node **node, in __io_run_local_work_loop() argument
1274 while (*node) { in __io_run_local_work_loop()
1275 struct llist_node *next = (*node)->next; in __io_run_local_work_loop()
1276 struct io_kiocb *req = container_of(*node, struct io_kiocb, in __io_run_local_work_loop()
1277 io_task_work.node); in __io_run_local_work_loop()
1281 *node = next; in __io_run_local_work_loop()
1292 struct llist_node *node; in __io_run_local_work() local
1310 node = llist_reverse_order(llist_del_all(&ctx->work_llist)); in __io_run_local_work()
1311 ret += __io_run_local_work_loop(&node, tw, max_events - ret); in __io_run_local_work()
1312 ctx->retry_llist.first = node; in __io_run_local_work()
1388 struct io_wq_work_node *node) in io_free_batch_list() argument
1392 struct io_kiocb *req = container_of(node, struct io_kiocb, in io_free_batch_list()
1397 node = req->comp_list.next; in io_free_batch_list()
1403 node = req->comp_list.next; in io_free_batch_list()
1424 node = req->comp_list.next; in io_free_batch_list()
1426 } while (node); in io_free_batch_list()
1433 struct io_wq_work_node *node; in __io_submit_flush_completions() local
1436 __wq_list_for_each(node, &state->compl_reqs) { in __io_submit_flush_completions()
1437 struct io_kiocb *req = container_of(node, struct io_kiocb, in __io_submit_flush_completions()
1911 struct io_rsrc_node *node; in io_file_get_fixed() local
1915 node = io_rsrc_node_lookup(&ctx->file_table.data, fd); in io_file_get_fixed()
1916 if (node) { in io_file_get_fixed()
1917 io_req_assign_rsrc_node(&req->file_node, node); in io_file_get_fixed()
1918 req->flags |= io_slot_flags(node); in io_file_get_fixed()
1919 file = io_slot_file(node); in io_file_get_fixed()
2871 struct io_tctx_node *node; in io_ring_exit_work() local
2938 node = list_first_entry(&ctx->tctx_list, struct io_tctx_node, in io_ring_exit_work()
2942 ret = task_work_add(node->task, &exit.task_work, TWA_SIGNAL); in io_ring_exit_work()
3040 struct io_tctx_node *node; in io_uring_try_cancel_iowq() local
3045 list_for_each_entry(node, &ctx->tctx_list, ctx_node) { in io_uring_try_cancel_iowq()
3046 struct io_uring_task *tctx = node->task->io_uring; in io_uring_try_cancel_iowq()
3136 struct io_tctx_node *node; in io_uring_cancel_generic() local
3162 xa_for_each(&tctx->xa, index, node) { in io_uring_cancel_generic()
3164 if (node->ctx->sq_data) in io_uring_cancel_generic()
3166 loop |= io_uring_try_cancel_requests(node->ctx, in io_uring_cancel_generic()
3187 xa_for_each(&tctx->xa, index, node) { in io_uring_cancel_generic()
3188 if (io_local_work_pending(node->ctx)) { in io_uring_cancel_generic()
3189 WARN_ON_ONCE(node->ctx->submitter_task && in io_uring_cancel_generic()
3190 node->ctx->submitter_task != current); in io_uring_cancel_generic()