Defined in 1 files as a function:

Referenced in 9 files:

Smatch caller information:

kernel/bpf/devmap.c __xdp_enqueue() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 1-u64max
BUF_SIZE 0 xdpf (-1),1-s32max
BUF_SIZE 0 xdpf (-1),1-s32max
DATA_SOURCE 0 xdpf $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

kernel/bpf/devmap.c is_valid_dst() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 1-u64max
BUF_SIZE 0 xdpf (-1),1-s32max
BUF_SIZE 0 xdpf (-1),1-s32max
DATA_SOURCE 0 xdpf $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/aquantia/atlantic/aq_ring.c aq_ring_tx_clean() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 1-u64max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 xdpf unit_byte

drivers/net/ethernet/intel/igc/igc_main.c igc_xdp_init_tx_descriptor() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 4096-ptr_max
BUF_SIZE 0 xdpf (-1),1-s32max
BUF_SIZE 0 xdpf (-1),1-s32max
DATA_SOURCE 0 xdpf $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 xdpf unit_byte
LOCK2 &nq->_xmit_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct netdev_queue)->_xmit_lock

drivers/net/veth.c veth_xdp_rcv() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 0,2-u64max
DATA_SOURCE 0 xdpf r veth_ptr_to_xdp
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/veth.c veth_xdp_xmit() -> xdp_get_frame_len()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &rq->xdp_ring.producer_lock
LOCK2 rcu_read
TYPE_LOCK (struct ptr_ring)->producer_lock

drivers/net/ethernet/intel/ixgbe/ixgbe_main.c ixgbe_xmit_xdp_ring() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 4096-ptr_max
BUF_SIZE 0 xdpf (-1),1-s32max
BUF_SIZE 0 xdpf (-1),1-s32max
DATA_SOURCE 0 xdpf $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 xdpf unit_byte
HALF_LOCKED2 &ring->tx_lock
HALF_LOCKED2 rcu_read

drivers/net/ethernet/intel/igb/igb_main.c igb_xmit_xdp_ring() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 4096-ptr_max
BUF_SIZE 0 xdpf (-1),1-s32max
BUF_SIZE 0 xdpf (-1),1-s32max
DATA_SOURCE 0 xdpf $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 xdpf unit_byte
LOCK2 &nq->_xmit_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct netdev_queue)->_xmit_lock

drivers/net/ethernet/fungible/funeth/funeth_tx.c fun_xdp_tx() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 4096-ptr_max
PARAM_VALUE 0 xdpf->flags 1-u32max
BUF_SIZE 0 xdpf (-1),1-s32max
BUF_SIZE 0 xdpf (-1),1-s32max
DATA_SOURCE 0 xdpf $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 xdpf unit_byte
HALF_LOCKED2 rcu_read

drivers/net/virtio_net.c __free_old_xmit() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 0,4-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 rcu_read

drivers/net/ethernet/intel/i40e/i40e_txrx.c i40e_xmit_xdp_ring() -> xdp_get_frame_len()

Type Parameter Key Value
PARAM_VALUE 0 xdpf 4096-ptr_max
BUF_SIZE 0 xdpf (-1),1-s32max
BUF_SIZE 0 xdpf (-1),1-s32max
DATA_SOURCE 0 xdpf $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 xdpf unit_byte
HALF_LOCKED2 rcu_read