Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 2 files:

Smatch caller information:

io_uring/napi.c io_napi_register_napi() -> io_napi_free()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->int_flags 4-u32max
PARAM_VALUE 0 ctx->napi_track_mode 255
PARAM_VALUE 0 ctx->uring_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->uring_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ctx->uring_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ctx->uring_lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 ctx->uring_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctx->uring_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->uring_lock.wait_lock.owner (-1)
PARAM_VALUE 0 ctx->uring_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ctx->uring_lock.wait_lock.raw_lock.val.counter 0-s32max
BUF_SIZE 0 ctx s32min-(-2),1-s32max
BUF_SIZE 0 ctx s32min-(-2),1-s32max
CAPPED_DATA 0 ctx->submitter_task 1
DATA_SOURCE 0 ctx $0
BIT_INFO 0 ctx->flags 0x0,0xfffffffe
NOCHECK_CALL
LOCK2 0 &ctx->uring_lock
TYPE_LOCK (struct io_ring_ctx)->uring_lock

io_uring/napi.c io_unregister_napi() -> io_napi_free()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->int_flags 4-u32max
PARAM_VALUE 0 ctx->napi_busy_poll_dt 0
PARAM_VALUE 0 ctx->napi_prefer_busy_poll 0
PARAM_VALUE 0 ctx->napi_track_mode 255
PARAM_VALUE 0 ctx->uring_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->uring_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ctx->uring_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ctx->uring_lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 ctx->uring_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctx->uring_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->uring_lock.wait_lock.owner (-1)
PARAM_VALUE 0 ctx->uring_lock.wait_lock.owner_cpu u32max
BUF_SIZE 0 ctx s32min-(-2),1-s32max
BUF_SIZE 0 ctx s32min-(-2),1-s32max
CAPPED_DATA 0 ctx->submitter_task 1
DATA_SOURCE 0 ctx $0
NOCHECK_CALL
LOCK2 0 &ctx->uring_lock
TYPE_LOCK (struct io_ring_ctx)->uring_lock

io_uring/io_uring.c io_ring_ctx_free() -> io_napi_free()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->apoll_cache.entries 0
PARAM_VALUE 0 ctx->buf_table.nr 0
PARAM_VALUE 0 ctx->cmd_cache.entries 0
PARAM_VALUE 0 ctx->completion_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->file_table.data.nr 0
PARAM_VALUE 0 ctx->futex_cache.entries 0
PARAM_VALUE 0 ctx->hash_map 0,4096-ptr_max
PARAM_VALUE 0 ctx->imu_cache.entries 0
PARAM_VALUE 0 ctx->io_bl_xa.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->io_ev_fd 0
PARAM_VALUE 0 ctx->mm_account 0
PARAM_VALUE 0 ctx->netmsg_cache.entries 0
PARAM_VALUE 0 ctx->node_cache.entries 0
PARAM_VALUE 0 ctx->param_region.flags 0
PARAM_VALUE 0 ctx->param_region.nr_pages 0
PARAM_VALUE 0 ctx->param_region.pages 0
PARAM_VALUE 0 ctx->param_region.ptr 0
PARAM_VALUE 0 ctx->ref_comp.done 0-4294967293,u32max
PARAM_VALUE 0 ctx->ref_comp.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->ref_comp.wait.lock.owner (-1)
PARAM_VALUE 0 ctx->ref_comp.wait.lock.owner_cpu u32max
PARAM_VALUE 0 ctx->ref_comp.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 ctx->ref_comp.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 ctx->refs.data 0,4096-ptr_max
PARAM_VALUE 0 ctx->restrictions.bpf_filters 0,4096-ptr_max
PARAM_VALUE 0 ctx->restrictions.bpf_filters->callback_head.func 1-u64max
PARAM_VALUE 0 ctx->ring_region.flags 0
PARAM_VALUE 0 ctx->ring_region.nr_pages 0
PARAM_VALUE 0 ctx->ring_region.pages 0
PARAM_VALUE 0 ctx->ring_region.ptr 0
PARAM_VALUE 0 ctx->rings 0
PARAM_VALUE 0 ctx->rings_rcu 0
PARAM_VALUE 0 ctx->rw_cache.entries 0
PARAM_VALUE 0 ctx->sq_creds 0,4096-ptr_max
PARAM_VALUE 0 ctx->sq_creds->process_keyring->user->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->sq_creds->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 ctx->sq_creds->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 ctx->sq_creds->rcu.func 1-u64max
PARAM_VALUE 0 ctx->sq_creds->rcu.next 0
PARAM_VALUE 0 ctx->sq_creds->request_key_auth->user->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->sq_creds->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 ctx->sq_creds->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 ctx->sq_creds->session_keyring->user->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->sq_creds->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 ctx->sq_creds->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 ctx->sq_creds->thread_keyring->user->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->sq_creds->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 ctx->sq_creds->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 ctx->sq_creds->ucounts->ns->work.entry.next 4096-ptr_max
PARAM_VALUE 0 ctx->sq_creds->ucounts->ns->work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 ctx->sq_creds->user->uidhash_node->next->pprev 1-u64max
PARAM_VALUE 0 ctx->sq_creds->user->uidhash_node.next->pprev 1-u64max
PARAM_VALUE 0 ctx->sq_creds->user_ns->work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 ctx->sq_data 0
PARAM_VALUE 0 ctx->sq_data->thread->sched_class->uclamp_enabled 0-1
PARAM_VALUE 0 ctx->sq_region.flags 0
PARAM_VALUE 0 ctx->sq_region.nr_pages 0
PARAM_VALUE 0 ctx->sq_region.pages 0
PARAM_VALUE 0 ctx->sq_region.ptr 0
PARAM_VALUE 0 ctx->sq_sqes 0
PARAM_VALUE 0 ctx->sqd_list.next->prev 4096-ptr_max
PARAM_VALUE 0 ctx->submit_state.free_list.next 0
PARAM_VALUE 0 ctx->submitter_task 0,4096-ptr_max
PARAM_VALUE 0 ctx->tctx_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->tctx_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ctx->tctx_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ctx->tctx_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctx->tctx_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->timeout_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->uring_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->uring_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ctx->uring_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ctx->uring_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->uring_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 ctx->uring_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 ctx->uring_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 ctx->uring_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 ctx->uring_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctx->uring_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->user 0,4096-ptr_max
PARAM_VALUE 0 ctx->user->uidhash_node->next->pprev 1-u64max
PARAM_VALUE 0 ctx->user->uidhash_node.next->pprev 1-u64max
PARAM_VALUE 0 ctx->zcrx_ctxs.xa_head 0
PARAM_VALUE 0 ctx->zcrx_ctxs.xa_lock.rlock.dep_map->name 0-255
CAPPED_DATA 0 ctx 1
CAPPED_DATA 0 ctx->hash_map 1
CAPPED_DATA 0 ctx->sq_creds 1
CAPPED_DATA 0 ctx->user 1
CAPPED_DATA 0 &ctx->uring_lock 1
DATA_SOURCE 0 ctx $0
BIT_INFO 0 ctx->flags 0x0,0xffffffff
MEM_ZERO 0 &ctx->param_region
MEM_ZERO 0 &ctx->ring_region
MEM_ZERO 0 &ctx->sq_region
NOCHECK_CALL
HALF_LOCKED2 &pool->lock