Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 21 files:

Smatch caller information:

net/xdp/xsk_buff_pool.c xp_assign_dev() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev->ifindex 1
DATA_SOURCE 0 dev $1
DATA_SOURCE 1 queue_id $2
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue_id unit_array_size
LOCK2 &xs->mutex
LOCK2 global &rtnl_mutex
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &frag->frag_sem
HALF_LOCKED2 global &o2nm_cluster_group.cs_subsys.su_mutex
TYPE_LOCK (struct xdp_sock)->mutex

drivers/net/ethernet/intel/idpf/xsk.c idpf_xsk_setup_bufq() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/idpf/xsk.c idpf_xsk_setup_complq() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/idpf/xsk.c idpf_xsk_setup_rxq() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/idpf/xsk.c idpf_xsk_setup_txq() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/stmicro/stmmac/stmmac_xdp.c stmmac_xdp_disable_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 1 queue_id 0-254
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/ice/ice_main.c ice_get_xp_from_qid() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 1 queue_id 0-65534
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &vsi->xdp_state_lock

drivers/net/ethernet/intel/ice/ice_xsk.c ice_xsk_any_rx_ring_ena() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 1 queue_id 0-65534
CAPPED_DATA 1 queue_id 1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/ice/ice_xsk.c ice_xsk_pool_disable() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 1 queue_id 0-65534
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
LOCK2 &vsi->xdp_state_lock
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct ice_vsi)->xdp_state_lock

drivers/net/ethernet/engleder/tsnep_xdp.c tsnep_xdp_disable_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/igc/igc_main.c igc_get_xsk_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/core/netdev_queues.c netdev_queue_busy() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 0 &dev->lock

drivers/net/ethernet/intel/i40e/i40e_xsk.c i40e_xsk_any_rx_ring_enabled() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 1 queue_id 0-65534
CAPPED_DATA 1 queue_id 1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/i40e/i40e_xsk.c i40e_xsk_pool_disable() -> xsk_get_pool_from_qid()

Type Parameter Key Value
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_get_xsk_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 1 queue_id 0-254
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size

drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c otx2_pool_aq_init() -> xsk_get_pool_from_qid()

Type Parameter Key Value
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 1 queue_id
HALF_LOCKED2 &mbox->lock
HALF_LOCKED2 &pfvf->mbox.lock
HALF_LOCKED2 &pfvf->qos.qos_lock
TYPE_LOCK (struct mbox)->lock

drivers/net/ethernet/intel/igc/igc_xdp.c igc_xdp_disable_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/google/gve/gve_main.c gve_get_xsk_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->real_num_rx_queues 1-u16max
PARAM_VALUE 0 dev->real_num_tx_queues 1-u16max
PARAM_VALUE 1 queue_id 0-65534
CAPPED_DATA 0 dev->real_num_rx_queues 1
CAPPED_DATA 0 dev->real_num_tx_queues 1
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size

drivers/net/ethernet/google/gve/gve_main.c gve_xsk_pool_disable() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 queue_id 0-65534
CAPPED_DATA 0 dev->mtu 1
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_napi_configs
NO_OVERFLOW_SIMPLE 0 dev->num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 0 &dev->lock

net/xdp/xsk.c __xsk_reg_pool_at_qid() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 1 queue_id 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 queue_id $2
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue_id unit_array_size
LOCK2 &xs->mutex
LOCK2 global &rtnl_mutex
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &frag->frag_sem
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &o2nm_cluster_group.cs_subsys.su_mutex
HALF_LOCKED2 0 &dev->lock
TYPE_LOCK (struct xdp_sock)->mutex

drivers/net/ethernet/intel/igb/igb_xsk.c igb_xsk_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 1 queue_id 0-255
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/intel/igb/igb_xsk.c igb_xsk_pool_disable() -> xsk_get_pool_from_qid()

Type Parameter Key Value
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c ixgbe_xsk_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue_id unit_array_size

drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c ixgbe_xsk_pool_disable() -> xsk_get_pool_from_qid()

Type Parameter Key Value
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/libeth/xsk.c libeth_xsk_setup_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/intel/ice/ice_base.c ice_get_xp_from_qid() -> xsk_get_pool_from_qid()

Type Parameter Key Value
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size

drivers/net/ethernet/intel/i40e/i40e_main.c i40e_xsk_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 1 queue_id unit_array_size

drivers/net/ethernet/marvell/octeontx2/nic/otx2_xsk.c otx2_attach_xsk_buff() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 1 queue_id 1-u16max
DATA_SOURCE 1 queue_id $2
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
HALF_LOCKED2 &mbox->lock
HALF_LOCKED2 &pfvf->mbox.lock
HALF_LOCKED2 &pfvf->qos.qos_lock
TYPE_LOCK (struct mbox)->lock

drivers/net/ethernet/marvell/octeontx2/nic/otx2_xsk.c otx2_xsk_pool_disable() -> xsk_get_pool_from_qid()

Type Parameter Key Value
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &netdev->lock
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/freescale/dpaa2/dpaa2-xsk.c dpaa2_xsk_disable_pool() -> xsk_get_pool_from_qid()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 queue_id $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_napi_configs
NO_OVERFLOW_SIMPLE 0 dev->num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
NO_OVERFLOW_SIMPLE 1 queue_id
UNITS 1 queue_id unit_array_size
HALF_LOCKED2 &xs->mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 0 &dev->lock