Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/net/ethernet/pensando/ionic/ionic_txrx.c ionic_start_hwstamp_xmit() -> ionic_q_has_space()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 1 want 0-u16max
BUF_SIZE 0 q 256
DATA_SOURCE 1 want r ionic_tx_descs_needed
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/pensando/ionic/ionic_txrx.c ionic_tx() -> ionic_q_has_space()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 1 want 18
BUF_SIZE 0 q 256
DATA_SOURCE 0 q $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/pensando/ionic/ionic_main.c ionic_adminq_post() -> ionic_q_has_space()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 1 want 1
BUF_SIZE 0 q 256
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 q->index
LOCK2 &lif->adminq_lock
LOCK2 irqflags
HALF_LOCKED2 &phc->lock
HALF_LOCKED2 irqflags
TYPE_LOCK (struct ionic_lif)->adminq_lock