Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 7 files:
- arch/um/drivers/virtio_pcidev.c, line 188
- drivers/char/virtio_console.c
- drivers/net/can/virtio_can.c, line 207
- drivers/net/virtio_net.c, line 3586
- drivers/nvdimm/nd_virtio.c, line 226
- drivers/virtio/virtio_pci_modern.c, line 100
- drivers/virtio/virtio_ring.c, line 3633
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 |