| /drivers/net/vmxnet3/ |
| A D | vmxnet3_xdp.c | 116 struct xdp_frame *xdpf, in vmxnet3_xdp_xmit_frame() argument 129 dw2 |= xdpf->len; in vmxnet3_xdp_xmit_frame() 133 buf_size = xdpf->len; in vmxnet3_xdp_xmit_frame() 145 xdpf->data, buf_size, in vmxnet3_xdp_xmit_frame() 153 page = virt_to_page(xdpf->data); in vmxnet3_xdp_xmit_frame() 155 (xdpf->data - (void *)xdpf); in vmxnet3_xdp_xmit_frame() 160 tbi->xdpf = xdpf; in vmxnet3_xdp_xmit_frame() 207 struct xdp_frame *xdpf) in vmxnet3_xdp_xmit_back() argument 264 struct xdp_frame *xdpf; in vmxnet3_run_xdp() local 286 xdpf = xdp_convert_buff_to_frame(xdp); in vmxnet3_run_xdp() [all …]
|
| /drivers/net/ethernet/amazon/ena/ |
| A D | ena_xdp.c | 13 if (likely(tx_info->xdpf)) in validate_xdp_req_id() 21 struct xdp_frame *xdpf, in ena_xdp_tx_map_frame() argument 31 tx_info->xdpf = xdpf; in ena_xdp_tx_map_frame() 32 data = tx_info->xdpf->data; in ena_xdp_tx_map_frame() 33 size = tx_info->xdpf->len; in ena_xdp_tx_map_frame() 101 xdpf->len); in ena_xdp_xmit_frame() 116 tx_info->xdpf = NULL; in ena_xdp_xmit_frame() 381 struct xdp_frame *xdpf; in ena_clean_xdp_irq() local 400 xdpf = tx_info->xdpf; in ena_clean_xdp_irq() 401 tx_info->xdpf = NULL; in ena_clean_xdp_irq() [all …]
|
| A D | ena_xdp.h | 40 struct xdp_frame *xdpf, 87 struct xdp_frame *xdpf; in ena_xdp_execute() local 96 xdpf = xdp_convert_buff_to_frame(xdp); in ena_xdp_execute() 97 if (unlikely(!xdpf)) { in ena_xdp_execute() 110 if (ena_xdp_xmit_frame(xdp_ring, rx_ring->adapter, xdpf, in ena_xdp_execute() 112 xdp_return_frame(xdpf); in ena_xdp_execute()
|
| /drivers/net/ethernet/mellanox/mlx5/core/en/ |
| A D | xdp.c | 67 struct xdp_frame *xdpf; in mlx5e_xmit_xdp_buff() local 72 if (unlikely(!xdpf)) in mlx5e_xmit_xdp_buff() 76 xdptxd->data = xdpf->data; in mlx5e_xmit_xdp_buff() 77 xdptxd->len = xdpf->len; in mlx5e_xmit_xdp_buff() 99 xdp_return_frame(xdpf); in mlx5e_xmit_xdp_buff() 113 (union mlx5e_xdp_info) { .frame.xdpf = xdpf }); in mlx5e_xmit_xdp_buff() 125 dma_addr = page_pool_get_dma_addr(page) + (xdpf->data - (void *)xdpf); in mlx5e_xmit_xdp_buff() 669 struct xdp_frame *xdpf; in mlx5e_free_xdpsq_desc() local 673 xdpf = xdpi.frame.xdpf; in mlx5e_free_xdpsq_desc() 874 xdptxd->len = xdpf->len; in mlx5e_xdp_xmit() [all …]
|
| /drivers/net/ethernet/ti/icssg/ |
| A D | icssg_common.c | 142 struct xdp_frame *xdpf; in emac_tx_complete_packets() local 174 xdpf = swdata->data.xdpf; in emac_tx_complete_packets() 177 xdp_return_frame(xdpf); in emac_tx_complete_packets() 583 buf_dma = dma_map_single(tx_chn->dma_dev, xdpf->data, xdpf->len, DMA_TO_DEVICE); in emac_xmit_xdp_frame() 603 cppi5_hdesc_attach_buf(first_desc, buf_dma, xdpf->len, buf_dma, xdpf->len); in emac_xmit_xdp_frame() 606 swdata->data.xdpf = xdpf; in emac_xmit_xdp_frame() 646 struct xdp_frame *xdpf; in emac_run_xdp() local 659 if (unlikely(!xdpf)) { in emac_run_xdp() 1033 struct xdp_frame *xdpf; in prueth_tx_cleanup() local 1045 xdpf = swdata->data.xdpf; in prueth_tx_cleanup() [all …]
|
| /drivers/net/ethernet/intel/ixgbe/ |
| A D | ixgbe_xsk.c | 104 struct xdp_frame *xdpf; in ixgbe_run_xdp_zc() local 125 xdpf = xdp_convert_buff_to_frame(xdp); in ixgbe_run_xdp_zc() 126 if (unlikely(!xdpf)) in ixgbe_run_xdp_zc() 131 result = ixgbe_xmit_xdp_ring(ring, xdpf); in ixgbe_run_xdp_zc() 418 tx_bi->xdpf = NULL; in ixgbe_xmit_zc() 449 xdp_return_frame(tx_bi->xdpf); in ixgbe_clean_xdp_tx_buffer() 476 if (tx_bi->xdpf) in ixgbe_clean_xdp_tx_irq() 481 tx_bi->xdpf = NULL; in ixgbe_clean_xdp_tx_irq() 550 if (tx_bi->xdpf) in ixgbe_xsk_clean_tx_ring() 555 tx_bi->xdpf = NULL; in ixgbe_xsk_clean_tx_ring()
|
| /drivers/net/ethernet/sfc/siena/ |
| A D | tx.c | 213 struct xdp_frame *xdpf; in efx_siena_xdp_tx_buffers() local 255 xdpf = xdpfs[i]; in efx_siena_xdp_tx_buffers() 263 len = xdpf->len; in efx_siena_xdp_tx_buffers() 267 xdpf->data, len, in efx_siena_xdp_tx_buffers() 274 tx_buffer->xdpf = xdpf; in efx_siena_xdp_tx_buffers()
|
| A D | rx.c | 257 struct xdp_frame *xdpf; in efx_do_xdp() local 312 xdpf = xdp_convert_buff_to_frame(&xdp); in efx_do_xdp() 313 err = efx_siena_xdp_tx_buffers(efx, 1, &xdpf, true); in efx_do_xdp()
|
| /drivers/net/ethernet/freescale/dpaa/ |
| A D | dpaa_eth.c | 2246 memmove(aligned_data, xdpf->data, xdpf->len); in dpaa_a050385_wa_xdpf() 2273 memcpy(new_buff + headroom, xdpf->data, xdpf->len); in dpaa_a050385_wa_xdpf() 2280 new_xdpf->len = xdpf->len; in dpaa_a050385_wa_xdpf() 2548 buff_start = xdpf->data - xdpf->headroom; in dpaa_xdp_xmit_frame() 2555 swbp->xdpf = xdpf; in dpaa_xdp_xmit_frame() 2560 qm_fd_set_contig(&fd, xdpf->headroom, xdpf->len); in dpaa_xdp_xmit_frame() 2563 xdpf->headroom + xdpf->len, in dpaa_xdp_xmit_frame() 2596 struct xdp_frame *xdpf; in dpaa_run_xdp() local 2645 if (unlikely(!xdpf)) { in dpaa_run_xdp() 3072 struct xdp_frame *xdpf; in dpaa_xdp_xmit() local [all …]
|
| /drivers/net/ethernet/fungible/funeth/ |
| A D | funeth_tx.c | 500 xdp_return_frame(q->info[reclaim_idx].xdpf); in fun_xdpq_clean() 514 bool fun_xdp_tx(struct funeth_txq *q, struct xdp_frame *xdpf) in fun_xdp_tx() argument 516 unsigned int idx, nfrags = 1, ndesc = 1, tot_len = xdpf->len; in fun_xdp_tx() 525 if (unlikely(xdp_frame_has_frags(xdpf))) { in fun_xdp_tx() 526 si = xdp_get_shared_info_from_frame(xdpf); in fun_xdp_tx() 527 tot_len = xdp_get_frame_len(xdpf); in fun_xdp_tx() 539 if (unlikely(fun_map_pkt(q->dma_dev, si, xdpf->data, xdpf->len, dma, in fun_xdp_tx() 558 q->info[idx].xdpf = xdpf; in fun_xdp_tx() 618 xdp_return_frame(q->info[idx].xdpf); in fun_xdpq_purge()
|
| /drivers/net/ethernet/ti/ |
| A D | cpsw_priv.c | 55 struct xdp_frame *xdpf; in cpsw_tx_handler() local 62 xdpf = cpsw_handle_to_xdpf(token); in cpsw_tx_handler() 63 xmeta = (void *)xdpf + CPSW_XMETA_OFFSET; in cpsw_tx_handler() 66 xdp_return_frame(xdpf); in cpsw_tx_handler() 1289 dma, xdpf->len, port); in cpsw_xdp_tx_frame() 1291 if (sizeof(*xmeta) > xdpf->headroom) in cpsw_xdp_tx_frame() 1295 xdpf->data, xdpf->len, port); in cpsw_xdp_tx_frame() 1310 struct xdp_frame *xdpf; in cpsw_run_xdp() local 1327 xdpf = xdp_convert_buff_to_frame(xdp); in cpsw_run_xdp() 1328 if (unlikely(!xdpf)) in cpsw_run_xdp() [all …]
|
| /drivers/net/ethernet/aquantia/atlantic/ |
| A D | aq_ring.c | 320 } else if (buff->xdpf) { in aq_ring_tx_clean() 325 xdp_return_frame_rx_napi(buff->xdpf); in aq_ring_tx_clean() 330 buff->xdpf = NULL; in aq_ring_tx_clean() 377 struct xdp_frame *xdpf = frames[i]; in aq_xdp_xmit() local 390 struct xdp_frame *xdpf; in aq_xdp_build_skb() local 393 xdpf = xdp_convert_buff_to_frame(xdp); in aq_xdp_build_skb() 394 if (unlikely(!xdpf)) in aq_xdp_build_skb() 397 skb = xdp_build_skb_from_frame(xdpf, dev); in aq_xdp_build_skb() 412 struct xdp_frame *xdpf; in aq_xdp_run_prog() local 443 xdpf = xdp_convert_buff_to_frame(xdp); in aq_xdp_run_prog() [all …]
|
| A D | aq_nic.c | 576 struct xdp_frame *xdpf, in aq_nic_map_xdp() argument 592 sinfo = xdp_get_shared_info_from_frame(xdpf); in aq_nic_map_xdp() 593 total_len = xdpf->len; in aq_nic_map_xdp() 595 if (xdp_frame_has_frags(xdpf)) { in aq_nic_map_xdp() 599 dx_buff->pa = dma_map_single(dev, xdpf->data, dx_buff->len, in aq_nic_map_xdp() 649 dx_buff->xdpf = xdpf; in aq_nic_map_xdp() 800 dx_buff->xdpf = NULL; in aq_nic_map_skb() 830 struct xdp_frame *xdpf) in aq_nic_xmit_xdpf() argument 840 if (xdp_frame_has_frags(xdpf)) { in aq_nic_xmit_xdpf() 841 sinfo = xdp_get_shared_info_from_frame(xdpf); in aq_nic_xmit_xdpf() [all …]
|
| /drivers/net/ethernet/sfc/ |
| A D | tx.c | 418 struct xdp_frame *xdpf; in efx_xdp_tx_buffers() local 460 xdpf = xdpfs[i]; in efx_xdp_tx_buffers() 468 len = xdpf->len; in efx_xdp_tx_buffers() 472 xdpf->data, len, in efx_xdp_tx_buffers() 479 tx_buffer->xdpf = xdpf; in efx_xdp_tx_buffers()
|
| A D | rx.c | 255 struct xdp_frame *xdpf; in efx_do_xdp() local 310 xdpf = xdp_convert_buff_to_frame(&xdp); in efx_do_xdp() 311 err = efx_xdp_tx_buffers(efx, 1, &xdpf, true); in efx_do_xdp()
|
| /drivers/net/ethernet/socionext/ |
| A D | netsec.c | 272 struct xdp_frame *xdpf; member 675 bytes += desc->xdpf->len; in netsec_clean_tx_dring() 677 xdp_return_frame_rx_napi(desc->xdpf); in netsec_clean_tx_dring() 821 dring->desc[idx].xdpf = buf; in netsec_set_tx_de() 829 struct xdp_frame *xdpf, bool is_ndo) in netsec_xdp_queue_one() argument 851 dma_handle = dma_map_single(priv->dev, xdpf->data, xdpf->len, in netsec_xdp_queue_one() 866 sizeof(*xdpf); in netsec_xdp_queue_one() 873 tx_desc.addr = xdpf->data; in netsec_xdp_queue_one() 874 tx_desc.len = xdpf->len; in netsec_xdp_queue_one() 888 if (unlikely(!xdpf)) in netsec_xdp_xmit_back() [all …]
|
| /drivers/net/ethernet/qlogic/qede/ |
| A D | qede_fp.c | 332 xdp->xdpf = xdpf; in qede_xdp_xmit() 345 struct xdp_frame *xdpf; in qede_xdp_transmit() local 362 xdpf = frames[i]; in qede_xdp_transmit() 364 mapping = dma_map_single(dmadev, xdpf->data, xdpf->len, in qede_xdp_transmit() 370 NULL, xdpf))) in qede_xdp_transmit() 404 struct xdp_frame *xdpf; in qede_xdp_tx_int() local 412 xdpf = xdp_info->xdpf; in qede_xdp_tx_int() 414 if (xdpf) { in qede_xdp_tx_int() 415 dma_unmap_single(dev, xdp_info->mapping, xdpf->len, in qede_xdp_tx_int() 417 xdp_return_frame(xdpf); in qede_xdp_tx_int() [all …]
|
| /drivers/net/ethernet/microchip/lan966x/ |
| A D | lan966x_fdma.c | 374 xdp_return_frame_bulk(dcb_buf->data.xdpf, &bq); in lan966x_fdma_tx_clear_buf() 605 struct xdp_frame *xdpf; in lan966x_fdma_xmit_xdpf() local 627 xdpf = ptr; in lan966x_fdma_xmit_xdpf() 629 if (xdpf->headroom < IFH_LEN_BYTES) { in lan966x_fdma_xmit_xdpf() 634 ifh = xdpf->data - IFH_LEN_BYTES; in lan966x_fdma_xmit_xdpf() 640 xdpf->data - IFH_LEN_BYTES, in lan966x_fdma_xmit_xdpf() 641 xdpf->len + IFH_LEN_BYTES, in lan966x_fdma_xmit_xdpf() 648 next_dcb_buf->data.xdpf = xdpf; in lan966x_fdma_xmit_xdpf() 649 next_dcb_buf->len = xdpf->len + IFH_LEN_BYTES; in lan966x_fdma_xmit_xdpf()
|
| A D | lan966x_xdp.c | 62 struct xdp_frame *xdpf = frames[i]; in lan966x_xdp_xmit() local 65 err = lan966x_fdma_xmit_xdpf(port, xdpf, 0); in lan966x_xdp_xmit()
|
| /drivers/net/ethernet/broadcom/bnxt/ |
| A D | bnxt_xdp.c | 110 struct xdp_frame *xdpf) in __bnxt_xmit_xdp_redirect() argument 116 tx_buf->xdpf = xdpf; in __bnxt_xmit_xdp_redirect() 145 xdp_return_frame(tx_buf->xdpf); in bnxt_tx_int_xdp() 147 tx_buf->xdpf = NULL; in bnxt_tx_int_xdp()
|
| /drivers/net/ethernet/engleder/ |
| A D | tsnep_main.c | 640 len = xdpf->len; in tsnep_xdp_tx_map() 645 xdpf->data; in tsnep_xdp_tx_map() 653 virt_to_page(xdpf->data); in tsnep_xdp_tx_map() 658 dma += sizeof(*xdpf) + xdpf->headroom; in tsnep_xdp_tx_map() 690 if (unlikely(xdp_frame_has_frags(xdpf))) in tsnep_xdp_xmit_frame_ring() 701 entry->xdpf = xdpf; in tsnep_xdp_xmit_frame_ring() 706 entry->xdpf = NULL; in tsnep_xdp_xmit_frame_ring() 739 if (unlikely(!xdpf)) in tsnep_xdp_xmit_back() 750 xmit = tsnep_xdp_xmit_frame_ring(xdpf, tx, type); in tsnep_xdp_xmit_back() 851 xdp_frame_has_frags(entry->xdpf)) in tsnep_tx_poll() [all …]
|
| /drivers/net/ethernet/google/gve/ |
| A D | gve_tx_dqo.c | 1252 *bytes += pending_packet->xdpf->len; in gve_handle_packet_completion() 1254 xdp_return_frame(pending_packet->xdpf); in gve_handle_packet_completion() 1255 pending_packet->xdpf = NULL; in gve_handle_packet_completion() 1530 struct xdp_frame *xdpf) in gve_xdp_xmit_one_dqo() argument 1548 pkt->xdpf = xdpf; in gve_xdp_xmit_one_dqo() 1552 addr = dma_map_single(tx->dev, xdpf->data, xdpf->len, DMA_TO_DEVICE); in gve_xdp_xmit_one_dqo() 1557 dma_unmap_len_set(pkt, len[pkt->num_bufs], xdpf->len); in gve_xdp_xmit_one_dqo() 1562 false, xdpf->len, in gve_xdp_xmit_one_dqo() 1570 pkt->xdpf = NULL; in gve_xdp_xmit_one_dqo()
|
| /drivers/net/ethernet/intel/i40e/ |
| A D | i40e_xsk.c | 615 xdp_return_frame(tx_bi->xdpf); in i40e_clean_xdp_tx_buffer() 655 if (tx_bi->xdpf) { in i40e_clean_xdp_tx_irq() 657 tx_bi->xdpf = NULL; in i40e_clean_xdp_tx_irq() 756 if (tx_bi->xdpf) in i40e_xsk_clean_tx_ring() 761 tx_bi->xdpf = NULL; in i40e_xsk_clean_tx_ring()
|
| /drivers/net/ethernet/pensando/ionic/ |
| A D | ionic_txrx.c | 284 xdp_return_frame_rx_napi(desc_info->xdpf); in ionic_xdp_tx_desc_clean() 286 xdp_return_frame(desc_info->xdpf); in ionic_xdp_tx_desc_clean() 289 xdp_return_frame_bulk(desc_info->xdpf, &bq); in ionic_xdp_tx_desc_clean() 296 desc_info->xdpf = NULL; in ionic_xdp_tx_desc_clean() 334 desc_info->xdpf = frame; in ionic_xdp_post_frame() 477 struct xdp_frame *xdpf; in ionic_run_xdp() local 544 xdpf = xdp_convert_buff_to_frame(&xdp_buf); in ionic_run_xdp() 545 if (!xdpf) { in ionic_run_xdp() 564 err = ionic_xdp_post_frame(txq, xdpf, XDP_TX, in ionic_run_xdp() 1182 if (desc_info->xdpf) { in ionic_tx_clean()
|
| /drivers/net/ |
| A D | xen-netfront.c | 615 struct xdp_frame *xdpf) in xennet_xdp_xmit_one() argument 622 .page = virt_to_page(xdpf->data), in xennet_xdp_xmit_one() 627 offset_in_page(xdpf->data), in xennet_xdp_xmit_one() 628 xdpf->len); in xennet_xdp_xmit_one() 637 tx_stats->bytes += xdpf->len; in xennet_xdp_xmit_one() 663 struct xdp_frame *xdpf = frames[i]; in xennet_xdp_xmit() local 665 if (!xdpf) in xennet_xdp_xmit() 971 struct xdp_frame *xdpf; in xennet_run_xdp() local 984 xdpf = xdp_convert_buff_to_frame(xdp); in xennet_run_xdp() 985 if (unlikely(!xdpf)) { in xennet_run_xdp() [all …]
|