Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 3 files:
Smatch caller information:
fs/smb/server/connection.c ksmbd_conn_try_dequeue_request() -> release_async_work()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | work | 4096-ptr_max |
| PARAM_VALUE | 0 | work->asynchronous | 1 |
| PARAM_VALUE | 0 | work->conn | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->request_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->request_entry.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | work->request_entry.prev->next | 4096-ptr_max |
| CAPPED_DATA | 0 | &work->async_request_entry | 1 |
| CAPPED_DATA | 0 | &work->request_entry | 1 |
| DATA_SOURCE | 0 | work | $0 |
| NOCHECK_CALL | |||
| USER_PTR | 0 | work->request_buf | |
| HALF_LOCKED2 | &pool->lock |
fs/smb/server/smb2pdu.c smb2_read() -> release_async_work()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | work | 4096-ptr_max |
| PARAM_VALUE | 0 | work->async_id | 0-s32max |
| PARAM_VALUE | 0 | work->async_request_entry.next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->asynchronous | 1 |
| PARAM_VALUE | 0 | work->aux_read_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->aux_read_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->aux_read_list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | work->cancel_argv | 0 |
| PARAM_VALUE | 0 | work->cancel_fn | 0 |
| PARAM_VALUE | 0 | work->conn | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev->next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->ops->get_cmd_val | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->request_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->conn->status | s32min-1,4-s32max |
| PARAM_VALUE | 0 | work->conn->vals | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->vals->req_capabilities | 0,4,6,8,12,14,16-416 |
| PARAM_VALUE | 0 | work->iov | 4096-ptr_max |
| PARAM_VALUE | 0 | work->iov_alloc_cnt | (-2147483647)-s32max |
| PARAM_VALUE | 0 | work->next_smb2_rcv_hdr_off | s32min-(-1),1-s32max |
| PARAM_VALUE | 0 | work->response_buf | 16,4096-ptr_max |
| PARAM_VALUE | 0 | work->send_no_response | 1 |
| PARAM_VALUE | 0 | work->sess | 0,4096-ptr_max |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->file_table.lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->tcon | 4096-ptr_max |
| PARAM_VALUE | 0 | work->tcon->share_conf | 4096-ptr_max |
| CAPPED_DATA | 0 | work->tcon | 1 |
| DATA_SOURCE | 0 | work | $0 |
| NOCHECK_CALL | |||
| USER_PTR | 0 | work->request_buf | |
| HALF_LOCKED2 | &pool->lock |
fs/smb/server/smb2pdu.c smb2_read() -> release_async_work()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | work | 4096-ptr_max |
| PARAM_VALUE | 0 | work->async_id | 0-s32max |
| PARAM_VALUE | 0 | work->async_request_entry.next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->asynchronous | 1 |
| PARAM_VALUE | 0 | work->aux_read_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->aux_read_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->aux_read_list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | work->cancel_argv | 0 |
| PARAM_VALUE | 0 | work->cancel_fn | 0 |
| PARAM_VALUE | 0 | work->conn | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev->next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->ops->get_cmd_val | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->request_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->conn->status | s32min-1,4-s32max |
| PARAM_VALUE | 0 | work->conn->vals | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->vals->req_capabilities | 0,4,6,8,12,14,16-416 |
| PARAM_VALUE | 0 | work->iov | 4096-ptr_max |
| PARAM_VALUE | 0 | work->iov_alloc_cnt | (-2147483647)-s32max |
| PARAM_VALUE | 0 | work->next_smb2_rcv_hdr_off | s32min-(-1),1-s32max |
| PARAM_VALUE | 0 | work->response_buf | 16,4096-ptr_max |
| PARAM_VALUE | 0 | work->sess | 0,4096-ptr_max |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->file_table.lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->tcon | 4096-ptr_max |
| PARAM_VALUE | 0 | work->tcon->share_conf | 4096-ptr_max |
| CAPPED_DATA | 0 | work->tcon | 1 |
| DATA_SOURCE | 0 | work | $0 |
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | work->iov_alloc_cnt | |
| USER_PTR | 0 | work->request_buf | |
| HALF_LOCKED2 | &pool->lock |
fs/smb/server/smb2pdu.c smb2_read() -> release_async_work()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | work | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->ops->get_cmd_val | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->conn->status | s32min-1,4-s32max |
| PARAM_VALUE | 0 | work->conn->vals | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->vals->req_capabilities | 0,4,6,8,12,14,16-416 |
| PARAM_VALUE | 0 | work->response_buf | 16,4096-ptr_max |
| PARAM_VALUE | 0 | work->sess | 0,4096-ptr_max |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->tcon | 4096-ptr_max |
| PARAM_VALUE | 0 | work->tcon->share_conf | 4096-ptr_max |
| CAPPED_DATA | 0 | work->tcon | 1 |
| DATA_SOURCE | 0 | work | $0 |
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | work->iov_alloc_cnt | |
| USER_PTR | 0 | work->request_buf | |
| HALF_LOCKED2 | &pool->lock |
fs/smb/server/smb2pdu.c smb2_write() -> release_async_work()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | work | 4096-ptr_max |
| PARAM_VALUE | 0 | work->async_id | 0-s32max |
| PARAM_VALUE | 0 | work->async_request_entry.next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->asynchronous | 1 |
| PARAM_VALUE | 0 | work->aux_read_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->aux_read_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->aux_read_list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | work->cancel_argv | 0 |
| PARAM_VALUE | 0 | work->cancel_fn | 0 |
| PARAM_VALUE | 0 | work->conn | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev->next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->ops->get_cmd_val | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->request_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->conn->status | s32min-1,4-s32max |
| PARAM_VALUE | 0 | work->conn->vals | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->vals->max_write_size | 0,65536-8388608 |
| PARAM_VALUE | 0 | work->conn->vals->req_capabilities | 0,4,6,8,12,14,16-416 |
| PARAM_VALUE | 0 | work->iov | 4096-ptr_max |
| PARAM_VALUE | 0 | work->iov_alloc_cnt | (-2147483647)-s32max |
| PARAM_VALUE | 0 | work->next_smb2_rcv_hdr_off | s32min-(-1),1-s32max |
| PARAM_VALUE | 0 | work->response_buf | 16,4096-ptr_max |
| PARAM_VALUE | 0 | work->sess | 0,4096-ptr_max |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->file_table.lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->tcon | 4096-ptr_max |
| PARAM_VALUE | 0 | work->tcon->share_conf | 4096-ptr_max |
| CAPPED_DATA | 0 | work->tcon | 1 |
| DATA_SOURCE | 0 | work | $0 |
| NOCHECK_CALL | |||
| USER_DATA | 0 | work->remote_key | 0-u32max[u] |
| USER_PTR | 0 | work->request_buf | |
| HALF_LOCKED2 | &pool->lock |
fs/smb/server/smb2pdu.c smb2_write() -> release_async_work()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | work | 4096-ptr_max |
| PARAM_VALUE | 0 | work->async_id | 0-s32max |
| PARAM_VALUE | 0 | work->async_request_entry.next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->asynchronous | 1 |
| PARAM_VALUE | 0 | work->cancel_argv | 0 |
| PARAM_VALUE | 0 | work->cancel_fn | 0 |
| PARAM_VALUE | 0 | work->conn | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->async_requests.prev->next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->ops->get_cmd_val | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->request_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->conn->session_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->conn->status | s32min-1,4-s32max |
| PARAM_VALUE | 0 | work->conn->vals | 4096-ptr_max |
| PARAM_VALUE | 0 | work->conn->vals->max_write_size | 0,65536-8388608 |
| PARAM_VALUE | 0 | work->conn->vals->req_capabilities | 0,4,6,8,12,14,16-416 |
| PARAM_VALUE | 0 | work->next_smb2_rcv_hdr_off | s32min-(-1),1-s32max |
| PARAM_VALUE | 0 | work->response_buf | 16,4096-ptr_max |
| PARAM_VALUE | 0 | work->sess | 0,4096-ptr_max |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->chann_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->file_table.lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->rpc_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | work->sess->tree_conns_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | work->tcon | 4096-ptr_max |
| PARAM_VALUE | 0 | work->tcon->share_conf | 4096-ptr_max |
| CAPPED_DATA | 0 | work->tcon | 1 |
| DATA_SOURCE | 0 | work | $0 |
| NOCHECK_CALL | |||
| USER_DATA | 0 | work->remote_key | 0-u32max[u] |
| USER_PTR | 0 | work->request_buf | |
| HALF_LOCKED2 | &pool->lock |
fs/smb/server/oplock.c oplock_break() -> release_async_work()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | work | 4096-ptr_max |
| DATA_SOURCE | 0 | work | $2 |
| RX_PATH | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | work->remote_key | 0-u32max[u] |
| NO_OVERFLOW_SIMPLE | 0 | work->response_sz | |
| USER_PTR | 0 | work->request_buf |
fs/smb/server/oplock.c oplock_break() -> release_async_work()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | work | 4096-ptr_max |
| DATA_SOURCE | 0 | work | $2 |
| RX_PATH | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | work->remote_key | 0-u32max[u] |
| NO_OVERFLOW_SIMPLE | 0 | work->response_sz | |
| USER_PTR | 0 | work->request_buf |