Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 7 files:

Smatch caller information:

drivers/net/can/virtio_can.c virtio_can_send_ctrl_msg() -> virtqueue_is_broken()

Type Parameter Key Value
PARAM_VALUE 0 _vq 1-u64max
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &ndev->ethtool->rss_lock
HALF_LOCKED2 &ndev->lock

drivers/net/can/virtio_can.c virtio_can_send_ctrl_msg() -> virtqueue_is_broken()

Type Parameter Key Value
PARAM_VALUE 0 _vq 1-u64max
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &ndev->ethtool->rss_lock
HALF_LOCKED2 &ndev->lock

drivers/virtio/virtio_pci_modern.c virtqueue_exec_admin_cmd() -> virtqueue_is_broken()

Type Parameter Key Value
PARAM_VALUE 0 _vq 1-u64max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &migf->lock
HALF_LOCKED2 &migf->virtvdev->state_mutex
HALF_LOCKED2 &virtvdev->state_mutex
HALF_LOCKED2 _T->lock

drivers/nvdimm/nd_virtio.c virtio_pmem_flush() -> virtqueue_is_broken()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vpmem->pmem_lock
LOCK2 _T->lock
LOCK2 flags
TYPE_LOCK (struct virtio_pmem)->pmem_lock

drivers/char/virtio_console.c __send_control_msg() -> virtqueue_is_broken()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &portdev->c_ovq_lock
TYPE_LOCK (struct ports_device)->c_ovq_lock

drivers/char/virtio_console.c __send_control_msg() -> virtqueue_is_broken()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &portdev->c_ovq_lock
TYPE_LOCK (struct ports_device)->c_ovq_lock

drivers/char/virtio_console.c __send_to_port() -> virtqueue_is_broken()

Type Parameter Key Value
PARAM_VALUE 0 _vq 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &port->outvq_lock
LOCK2 flags
HALF_LOCKED2 &hp->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct port)->outvq_lock

drivers/char/virtio_console.c __send_to_port() -> virtqueue_is_broken()

Type Parameter Key Value
PARAM_VALUE 0 _vq 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &port->outvq_lock
LOCK2 flags
HALF_LOCKED2 &hp->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct port)->outvq_lock

drivers/net/virtio_net.c virtnet_send_command_reply() -> virtqueue_is_broken()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vi->cvq_lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct virtnet_info)->cvq_lock

drivers/net/virtio_net.c virtnet_send_command_reply() -> virtqueue_is_broken()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vi->cvq_lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct virtnet_info)->cvq_lock