Defined in 2 files as a function:

Referenced in 5 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 1 count 1
DATA_SOURCE 0 pool r xsk_get_pool_from_qid
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

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

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 1 count 1
DATA_SOURCE 0 pool r xsk_get_pool_from_qid
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c dpaa2_eth_add_bufs() -> xsk_buff_can_alloc()

Type Parameter Key Value
PARAM_VALUE 0 pool->fq->cached_cons 0-4294967295
PARAM_VALUE 0 pool->fq->cached_prod 0-4294967295
PARAM_VALUE 1 count 7
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pool->fq->ring->consumer
NO_OVERFLOW_SIMPLE 0 pool->free_list_cnt

drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c mlx5e_xsk_alloc_rx_mpwqe() -> xsk_buff_can_alloc()

Type Parameter Key Value
PARAM_VALUE 0 pool 1-u64max
CAPPED_DATA 1 count 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 pool->free_list_cnt
NO_OVERFLOW_SIMPLE 1 count
LOCK2 rcu_read
HALF_LOCKED2 bh

net/xdp/xsk.c __xsk_rcv() -> xsk_buff_can_alloc()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
CAPPED_DATA 1 count 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &pool->rx_lock

drivers/net/ethernet/intel/ice/ice_base.c ice_vsi_cfg_rxq() -> xsk_buff_can_alloc()

Type Parameter Key Value
PARAM_VALUE 0 pool 1-u64max
PARAM_VALUE 1 count 0-u16max
RX_PATH
TASK_NOT_RUNNING