Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/net/virtio_net.c check_sq_full_and_disable() -> tx_may_stop()

Type Parameter Key Value
PARAM_VALUE 0 vi 4096-ptr_max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 2 sq 4096-ptr_max
BUF_SIZE 0 vi s32min-(-1),1-s32max
BUF_SIZE 0 vi s32min-(-1),1-s32max
DATA_SOURCE 0 vi $0
DATA_SOURCE 1 dev $1
DATA_SOURCE 2 sq $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 dev->group
NO_OVERFLOW_SIMPLE 1 dev->num_tc
NO_OVERFLOW_SIMPLE 1 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 1 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 1 dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 1 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 1 dev->tx_queue_len
UNITS 0 vi unit_byte
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 1 &dev->tx_global_lock

drivers/net/virtio_net.c start_xmit() -> tx_may_stop()

Type Parameter Key Value
PARAM_VALUE 0 vi->sq 4096-ptr_max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 2 sq 4096-ptr_max
PARAM_VALUE 2 sq->vq 4096-ptr_max
CAPPED_DATA 1 dev->num_tx_queues 1
CAPPED_DATA 2 sq->vq->vdev->priv->hdr_len 1
DATA_SOURCE 1 dev $1
PARAM_COMPARE 0 vi == $1->priv
PARAM_COMPARE 1 dev->priv == $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 dev->group
NO_OVERFLOW_SIMPLE 1 dev->num_tc
NO_OVERFLOW_SIMPLE 1 dev->proto_down
NO_OVERFLOW_SIMPLE 1 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 1 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 1 dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 1 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 1 dev->tx_queue_len
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read
HALF_LOCKED2 1 &dev->tx_global_lock