函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\io_uring.c Create Date:2022-07-29 10:55:02
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:__io_queue_sqe

函数原型:static void __io_queue_sqe(struct io_kiocb *req, const struct io_uring_sqe *sqe)

返回类型:void

参数:

类型参数名称
struct io_kiocb *req
const struct io_uring_sqe *sqe
3538  struct io_kiocb * nxt = NULL
3541  again :
3542  linked_timeout等于io_prep_linked_timeout(req)
3544  ret等于io_issue_sqe(req, sqe, & nxt, true)
3550  如果ret恒等于负EAGAIN且非flags按位与must not punt to workers 的值或flags按位与must be punted even for NONBLOCK 的值则
3552  如果flags按位与IO_WQ_WORK_NEEDS_FILES
3553  ret等于io_grab_files(req)
3554  如果ret则转到:err
3562  io_queue_async_work(req)
3563  转到:done_req
3566  err :
3568  io_put_req(req)
3570  如果linked_timeout
3571  如果非retio_queue_linked_timeout(linked_timeout)
3573  否则io_put_req(linked_timeout)
3578  如果ret
3579  io_cqring_add_event(req, ret)
3580  req_set_fail_links(req)
3581  io_put_req(req)
3583  done_req :
3584  如果nxt
3585  req等于nxt
3586  nxt = NULL
3587  转到:again
调用者
名称描述
io_queue_sqe