Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 10 files:

Smatch caller information:

io_uring/futex.c __io_futex_complete() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 0 tw_req $0
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/timeout.c io_req_task_link_timeout() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 0 tw_req $0
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/timeout.c io_req_task_link_timeout() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 0 tw_req $0
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/timeout.c io_req_tw_fail_links() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/timeout.c io_timeout_complete() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 0 tw_req $0
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/poll.c io_poll_task_func() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 0 tw_req $0
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/poll.c io_poll_task_func() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 0 tw_req $0
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/notif.c io_notif_tw_complete() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/waitid.c io_waitid_cb() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 0 tw_req $0
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/rw.c io_req_rw_complete() -> io_req_task_complete()

Type Parameter Key Value
DATA_SOURCE 0 tw_req $0
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

io_uring/tw.c io_cancel_local_task_work() -> (struct io_task_work)->func()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 _T->lock

io_uring/tw.c __io_run_local_work_loop() -> __io_run_local_work_loop ptr __f1()

Type Parameter Key Value
DATA_SOURCE 1 tw $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctx->uring_lock
TYPE_LOCK (struct io_ring_ctx)->uring_lock

io_uring/tw.c tctx_task_work_run() -> tctx_task_work_run ptr __f1()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 &sqd->lock