Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/net/ethernet/mscc/ocelot_fdma.c ocelot_fdma_send_skb() -> ocelot_fdma_tx_ring_empty()

Type Parameter Key Value
PARAM_VALUE 0 fdma 4096-ptr_max
CAPPED_DATA 0 fdma->tx_ring.next_to_clean 1
DATA_SOURCE 0 fdma $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &fdma->tx_ring.xmit_lock
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct ocelot_fdma_tx_ring)->xmit_lock

drivers/net/ethernet/mscc/ocelot_fdma.c ocelot_fdma_tx_cleanup() -> ocelot_fdma_tx_ring_empty()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/mscc/ocelot_fdma.c ocelot_fdma_tx_cleanup() -> ocelot_fdma_tx_ring_empty()

Type Parameter Key Value
PARAM_VALUE 0 fdma 4096-ptr_max
PARAM_COMPARE 0 fdma->tx_ring.next_to_clean != $0->tx_ring.next_to_use
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/mscc/ocelot_fdma.c ocelot_fdma_tx_cleanup() -> ocelot_fdma_tx_ring_empty()

Type Parameter Key Value
PARAM_VALUE 0 fdma 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read