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