Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/net/ethernet/amazon/ena/ena_netdev.c ena_clean_tx_irq() -> ena_unmap_tx_buff()

Type Parameter Key Value
PARAM_VALUE 0 tx_ring 4096-ptr_max
PARAM_VALUE 0 tx_ring->adapter 4096-ptr_max
PARAM_VALUE 0 tx_ring->ena_com_io_cq 4096-ptr_max
PARAM_VALUE 0 tx_ring->ena_com_io_cq->phase 0-1
PARAM_VALUE 0 tx_ring->ena_com_io_cq->q_depth 0
PARAM_VALUE 0 tx_ring->netdev 4096-ptr_max
PARAM_VALUE 0 tx_ring->tx_buffer_info 4096-ptr_max
PARAM_VALUE 1 tx_info 4096-ptr_max
PARAM_VALUE 1 tx_info->last_jiffies 0
PARAM_VALUE 1 tx_info->skb 0
PARAM_VALUE 1 tx_info->xdpf 0
CAPPED_DATA 0 tx_ring->netdev->num_tx_queues 1
DATA_SOURCE 0 tx_ring $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/amazon/ena/ena_netdev.c ena_free_tx_bufs() -> ena_unmap_tx_buff()

Type Parameter Key Value
PARAM_VALUE 0 tx_ring 4096-ptr_max
PARAM_VALUE 0 tx_ring->adapter 4096-ptr_max
PARAM_VALUE 0 tx_ring->ring_size s32min-(-1),1-s32max
PARAM_VALUE 0 tx_ring->tx_buffer_info 4096-ptr_max
PARAM_VALUE 0 *tx_ring->netdev->name 0-255
PARAM_VALUE 1 tx_info 4096-ptr_max
PARAM_VALUE 1 tx_info->skb 1-u64max
DATA_SOURCE 0 tx_ring $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/amazon/ena/ena_netdev.c ena_start_xmit() -> ena_unmap_tx_buff()

Type Parameter Key Value
PARAM_VALUE 0 tx_ring 4096-ptr_max
PARAM_VALUE 0 tx_ring->adapter 4096-ptr_max
PARAM_VALUE 0 tx_ring->ena_com_io_sq 4096-ptr_max
PARAM_VALUE 0 tx_ring->ena_com_io_sq->llq_buf_ctrl.curr_bounce_buf 1-u64max
PARAM_VALUE 0 tx_ring->free_ids 4096-ptr_max
PARAM_VALUE 0 tx_ring->tx_buffer_info 4096-ptr_max
PARAM_VALUE 1 tx_info 4096-ptr_max
PARAM_VALUE 1 tx_info->bufs->len 0-u16max
PARAM_VALUE 1 tx_info->bufs->paddr 0-s64max
PARAM_VALUE 1 tx_info->map_linear_data 0-1
PARAM_VALUE 1 tx_info->skb 4096-ptr_max
PARAM_VALUE 1 tx_info->xdpf 4096-ptr_max
CAPPED_DATA 0 tx_ring->ena_com_io_sq->tx_max_header_size 1
CAPPED_DATA 0 tx_ring->sgl_size 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 tx_info->skb->csum_offset 0-u16max
HOST_DATA 1 tx_info->skb->data_len 0-2147483648[c]
HOST_DATA 1 tx_info->skb->len 0-u32max[c]
HOST_DATA 1 tx_info->skb->tstamp 500000002-4294967299794967295[c]
HOST_DATA 1 tx_info->skb->users.refs.counter s32min-0,2-s32max
NO_OVERFLOW_SIMPLE 1 tx_info->skb->data_len
NO_OVERFLOW_SIMPLE 1 tx_info->skb->end
NO_OVERFLOW_SIMPLE 1 tx_info->skb->len
NO_OVERFLOW_SIMPLE 1 tx_info->skb->tail
NO_OVERFLOW_SIMPLE 1 tx_info->skb->truesize
NO_OVERFLOW_SIMPLE 1 tx_info->total_tx_size
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/amazon/ena/ena_netdev.c ena_tx_map_skb() -> ena_unmap_tx_buff()

Type Parameter Key Value
PARAM_VALUE 0 tx_ring 4096-ptr_max
PARAM_VALUE 0 tx_ring->adapter 4096-ptr_max
PARAM_VALUE 0 tx_ring->free_ids 4096-ptr_max
PARAM_VALUE 0 tx_ring->tx_buffer_info 4096-ptr_max
PARAM_VALUE 0 *tx_ring->adapter->netdev->name 0-255
PARAM_VALUE 1 tx_info 4096-ptr_max
PARAM_VALUE 1 tx_info->skb 0
PARAM_VALUE 1 tx_info->xdpf 0
CAPPED_DATA 0 tx_ring->sgl_size 1
DATA_SOURCE 0 tx_ring $0
DATA_SOURCE 1 tx_info $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 tx_info->skb->csum_offset 0-u16max
HOST_DATA 1 tx_info->skb->data_len 0-2147483648[c]
HOST_DATA 1 tx_info->skb->len 0-u32max[c]
HOST_DATA 1 tx_info->skb->tstamp 500000002-4294967299794967295[c]
HOST_DATA 1 tx_info->skb->users.refs.counter s32min-0,2-s32max
NO_OVERFLOW_SIMPLE 1 tx_info->skb->data_len
NO_OVERFLOW_SIMPLE 1 tx_info->skb->end
NO_OVERFLOW_SIMPLE 1 tx_info->skb->len
NO_OVERFLOW_SIMPLE 1 tx_info->skb->tail
NO_OVERFLOW_SIMPLE 1 tx_info->skb->truesize
USER_PTR 1 tx_info->skb->data
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/ethernet/amazon/ena/ena_xdp.c ena_clean_xdp_irq() -> ena_unmap_tx_buff()

Type Parameter Key Value
PARAM_VALUE 0 tx_ring 4096-ptr_max
PARAM_VALUE 0 tx_ring->adapter 4096-ptr_max
PARAM_VALUE 0 tx_ring->ena_com_io_cq 4096-ptr_max
PARAM_VALUE 0 tx_ring->ena_com_io_cq->phase 0-1
PARAM_VALUE 0 tx_ring->ena_com_io_cq->q_depth 0
PARAM_VALUE 0 tx_ring->tx_buffer_info 4096-ptr_max
PARAM_VALUE 1 tx_info 4096-ptr_max
PARAM_VALUE 1 tx_info->last_jiffies 0
PARAM_VALUE 1 tx_info->skb 0
PARAM_VALUE 1 tx_info->xdpf 0
DATA_SOURCE 0 tx_ring $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/amazon/ena/ena_xdp.c ena_xdp_xmit_frame() -> ena_unmap_tx_buff()

Type Parameter Key Value
PARAM_VALUE 0 tx_ring 4096-ptr_max
PARAM_VALUE 0 tx_ring->dev->dma_io_tlb_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 tx_ring->dev->dma_io_tlb_pools.next 4096-ptr_max
PARAM_VALUE 0 tx_ring->dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 tx_ring->dev->dma_io_tlb_pools.next->prev->prev 4096-ptr_max
PARAM_VALUE 0 tx_ring->dev->dma_uses_io_tlb 1
PARAM_VALUE 0 tx_ring->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 tx_ring->ena_com_io_sq 4096-ptr_max
PARAM_VALUE 0 tx_ring->ena_com_io_sq->llq_buf_ctrl.curr_bounce_buf 1-u64max
PARAM_VALUE 0 tx_ring->free_ids 4096-ptr_max
PARAM_VALUE 0 tx_ring->tx_buffer_info 4096-ptr_max
PARAM_VALUE 0 tx_ring->xdp_tx_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 tx_info 4096-ptr_max
PARAM_VALUE 1 tx_info->bufs->len 0-u16max
PARAM_VALUE 1 tx_info->bufs->paddr 0-s64max
PARAM_VALUE 1 tx_info->map_linear_data 0
PARAM_VALUE 1 tx_info->num_of_bufs 0-1
PARAM_VALUE 1 tx_info->skb 4096-ptr_max
PARAM_VALUE 1 tx_info->xdpf 4096-ptr_max
CAPPED_DATA 0 tx_ring->ena_com_io_sq->tx_max_header_size 1
DATA_SOURCE 0 tx_ring $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 tx_info->total_tx_size
LOCK2 0 &tx_ring->xdp_tx_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct ena_ring)->xdp_tx_lock