Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_tso_xmit() -> stmmac_tx_avail()

Type Parameter Key Value
PARAM_VALUE 0 priv->dma_conf.tx_queue 4096-ptr_max
PARAM_VALUE 1 queue 0-u16max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_tso_xmit() -> stmmac_tx_avail()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->dma_conf.tx_queue 4096-ptr_max
PARAM_VALUE 1 queue 0-u16max
BIT_INFO 0 priv->msg_enable 0x0,0xffffffff
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_tx_clean() -> stmmac_tx_avail()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->dma_conf.tx_queue 4096-ptr_max
PARAM_VALUE 1 queue 0-254
CAPPED_DATA 0 priv->dev->num_tx_queues 1
CAPPED_DATA 1 queue 1
DATA_SOURCE 0 priv $0
DATA_SOURCE 1 queue $2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue unit_array_size
LOCK2 bh
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 rcu_read

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_xdp_xmit_xdpf() -> stmmac_tx_avail()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->dma_conf.tx_queue 4096-ptr_max
CAPPED_DATA 0 priv->dev->num_tx_queues 1
CAPPED_DATA 0 priv->plat->tx_queues_to_use 1
DATA_SOURCE 0 priv $0
DATA_SOURCE 1 queue $1
BIT_INFO 1 queue 0x0,0x0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &nq->_xmit_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct netdev_queue)->_xmit_lock

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_xdp_xmit_zc() -> stmmac_tx_avail()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->dma_conf.tx_queue 4096-ptr_max
PARAM_VALUE 1 queue 0-254
CAPPED_DATA 0 priv->dev->num_tx_queues 1
CAPPED_DATA 1 queue 1
DATA_SOURCE 0 priv $0
DATA_SOURCE 1 queue $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue unit_array_size
LOCK2 bh

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_xdp_xmit_zc() -> stmmac_tx_avail()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->dma_conf.tx_queue 4096-ptr_max
PARAM_VALUE 1 queue 0-254
CAPPED_DATA 0 priv->dev->num_tx_queues 1
CAPPED_DATA 1 queue 1
DATA_SOURCE 0 priv $0
DATA_SOURCE 1 queue $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue unit_array_size
LOCK2 bh

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_xmit() -> stmmac_tx_avail()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 1 queue 0-u16max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_xmit() -> stmmac_tx_avail()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->dma_conf.tx_queue 4096-ptr_max
PARAM_VALUE 1 queue 0-u16max
BIT_INFO 0 priv->msg_enable 0x0,0xffffffff
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read