Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
drivers/firmware/arm_scmi/transports/virtio.c scmi_finalize_message() -> scmi_vio_msg_release()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vioch | 4096-ptr_max |
| PARAM_VALUE | 0 | vioch->is_rx | 0 |
| PARAM_VALUE | 0 | vioch->shutdown_done | 0,4096-ptr_max |
| PARAM_VALUE | 1 | msg | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->input->msg_header | 0-268435455 |
| BUF_SIZE | 0 | vioch->deferred_tx_wq | (-1),512,528-8720 |
| BUF_SIZE | 1 | msg | (-1),128 |
| BUF_SIZE | 1 | msg | (-1),128 |
| BUF_SIZE | 1 | msg->input | (-1),8-s32max |
| BUF_SIZE | 1 | msg->request | (-1)-0,8-s32max |
| DATA_SOURCE | 0 | vioch | $0 |
| DATA_SOURCE | 1 | msg | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 1 | msg->max_len | 0-u32max |
| HOST_DATA | 1 | msg->poll_idx | 0-u32max |
| HOST_DATA | 1 | msg->poll_status | 0-u32max |
| HOST_DATA | 1 | msg->rx_len | 0-u32max |
| HOST_DATA | 1 | msg->users.refs.counter | s32min-s32max |
drivers/firmware/arm_scmi/transports/virtio.c scmi_vio_deferred_tx_worker() -> scmi_vio_msg_release()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vioch | 4096-ptr_max |
| PARAM_VALUE | 0 | vioch->users.refs.counter | (-1073741824),0-s32max |
| PARAM_VALUE | 1 | msg | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->input->msg_header | 0-268435455 |
| CAPPED_DATA | 0 | &vioch->pending_cmds_list | 1 |
| CAPPED_DATA | 1 | &msg->list | 1 |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | flags | ||
| LOCK2 | 0 | &vioch->pending_lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct scmi_vio_channel)->pending_lock |
drivers/firmware/arm_scmi/transports/virtio.c virtio_mark_txdone() -> scmi_vio_msg_release()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vioch | 4096-ptr_max |
| PARAM_VALUE | 0 | vioch->users.refs.counter | (-1073741824),0-s32max |
| PARAM_VALUE | 1 | msg | 1-u64max |
| BUF_SIZE | 0 | vioch | 256 |
| BUF_SIZE | 0 | vioch | 256 |
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &cinfo->transport_info->chan_lock |
drivers/firmware/arm_scmi/transports/virtio.c virtio_mark_txdone() -> scmi_vio_msg_release()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vioch | 4096-ptr_max |
| PARAM_VALUE | 0 | vioch->users.refs.counter | (-1073741824),0-s32max |
| PARAM_VALUE | 1 | msg | 4096-ptr_max |
| BUF_SIZE | 0 | vioch | 256 |
| BUF_SIZE | 0 | vioch | 256 |
| PREEMPT_ADD | <- disables preempt | ||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | flags | ||
| LOCK2 | 1 | &msg->poll_lock | |
| HALF_LOCKED2 | &cinfo->transport_info->chan_lock | ||
| TYPE_LOCK | (struct scmi_vio_msg)->poll_lock |
drivers/firmware/arm_scmi/transports/virtio.c virtio_send_message() -> scmi_vio_msg_release()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vioch | 4096-ptr_max |
| PARAM_VALUE | 0 | vioch->cinfo | 4096-ptr_max |
| PARAM_VALUE | 0 | vioch->cinfo->dev | 0,4096-ptr_max |
| PARAM_VALUE | 0 | vioch->free_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | vioch->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | vioch->users.refs.counter | (-1073741824),0-s32max |
| PARAM_VALUE | 1 | msg | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.next | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.next->next | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.prev | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->poll_idx | 0-u16max |
| PARAM_VALUE | 1 | msg->poll_status | 2 |
| PARAM_VALUE | 1 | msg->request->msg_header | 0-268435455 |
| PARAM_VALUE | 1 | msg->users.refs.counter | (-1073741824),0-s32max |
| PARAM_VALUE | 1 | *msg->request->msg_payload | 0-4294967295 |
| BUF_SIZE | 0 | vioch | 256 |
| BUF_SIZE | 0 | vioch | 256 |
| CAPPED_DATA | 1 | msg->input | 1 |
| CAPPED_DATA | 1 | msg->request | 1 |
| DATA_SOURCE | 1 | msg | r scmi_virtio_get_free_msg |
| PARAM_COMPARE | 0 | &vioch->free_list | != $0->free_list.next |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/firmware/arm_scmi/transports/virtio.c virtio_send_message() -> scmi_vio_msg_release()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vioch | 4096-ptr_max |
| PARAM_VALUE | 0 | vioch->cinfo | 4096-ptr_max |
| PARAM_VALUE | 0 | vioch->cinfo->dev | 0,4096-ptr_max |
| PARAM_VALUE | 0 | vioch->free_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | vioch->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | vioch->users.refs.counter | (-1073741824),0-s32max |
| PARAM_VALUE | 1 | msg | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.next | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.next->next | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 1 | msg->poll_status | 0,2 |
| PARAM_VALUE | 1 | msg->request->msg_header | 0-268435455 |
| PARAM_VALUE | 1 | *msg->request->msg_payload | 0-4294967295 |
| BUF_SIZE | 0 | vioch | 256 |
| BUF_SIZE | 0 | vioch | 256 |
| CAPPED_DATA | 1 | msg->input | 1 |
| CAPPED_DATA | 1 | msg->request | 1 |
| DATA_SOURCE | 1 | msg | r scmi_virtio_get_free_msg |
| FUZZY_MAX | 1 | msg->poll_status | 2 |
| PARAM_COMPARE | 0 | &vioch->free_list | != $0->free_list.next |
| BIT_INFO | 1 | msg->poll_status | 0x0,0x2 |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |