Home
last modified time | relevance | path

Searched refs:xdpf (Results 1 – 25 of 72) sorted by relevance

123

/linux-6.3-rc2/net/core/
A Dxdp.c425 __xdp_return(xdpf->data, &xdpf->mem, false, NULL); in xdp_return_frame()
444 __xdp_return(xdpf->data, &xdpf->mem, true, NULL); in xdp_return_frame_rx_napi()
579 xdpf = addr; in xdp_convert_zc_to_xdp_frame()
580 memset(xdpf, 0, sizeof(*xdpf)); in xdp_convert_zc_to_xdp_frame()
582 addr += sizeof(*xdpf); in xdp_convert_zc_to_xdp_frame()
588 xdpf->headroom = 0; in xdp_convert_zc_to_xdp_frame()
594 return xdpf; in xdp_convert_zc_to_xdp_frame()
629 headroom = sizeof(*xdpf) + xdpf->headroom; in __xdp_build_skb_from_frame()
643 if (xdpf->metasize) in __xdp_build_skb_from_frame()
665 xdp_scrub_frame(xdpf); in __xdp_build_skb_from_frame()
[all …]
/linux-6.3-rc2/kernel/bpf/
A Dcpumap.c152 struct xdp_frame *xdpf; in __cpu_map_ring_cleanup() local
155 if (WARN_ON_ONCE(xdpf)) in __cpu_map_ring_cleanup()
156 xdp_return_frame(xdpf); in __cpu_map_ring_cleanup()
228 rxq.dev = xdpf->dev_rx; in cpu_map_bpf_prog_run_xdp()
229 rxq.mem = xdpf->mem; in cpu_map_bpf_prog_run_xdp()
239 xdp_return_frame(xdpf); in cpu_map_bpf_prog_run_xdp()
250 xdp_return_frame(xdpf); in cpu_map_bpf_prog_run_xdp()
260 xdp_return_frame(xdpf); in cpu_map_bpf_prog_run_xdp()
378 xdpf->dev_rx); in cpu_map_kthread_run()
754 xdpf->dev_rx = dev_rx; in cpu_map_enqueue()
[all …]
A Ddevmap.c347 xdp_return_frame_rx_napi(xdpf); in dev_map_bpf_prog_run()
349 frames[nframes++] = xdpf; in dev_map_bpf_prog_run()
358 xdp_return_frame_rx_napi(xdpf); in dev_map_bpf_prog_run()
379 prefetch(xdpf); in bq_xmit_all()
468 bq->q[bq->count++] = xdpf; in bq_enqueue()
481 xdp_frame_has_frags(xdpf))) in __xdp_enqueue()
546 xdp_frame_has_frags(xdpf))) in is_valid_dst()
557 struct xdp_frame *xdpf) in dev_map_enqueue_clone() argument
561 nxdpf = xdpf_clone(xdpf); in dev_map_enqueue_clone()
615 if (!is_valid_dst(dst, xdpf)) in dev_map_enqueue_multi()
[all …]
/linux-6.3-rc2/include/net/
A Dxdp.h249 struct xdp_frame *xdpf_clone(struct xdp_frame *xdpf);
313 void xdp_return_frame(struct xdp_frame *xdpf);
314 void xdp_return_frame_rx_napi(struct xdp_frame *xdpf);
317 void xdp_return_frame_bulk(struct xdp_frame *xdpf,
328 struct xdp_mem_info *mem = &xdpf->mem; in xdp_release_frame()
336 if (likely(!xdp_frame_has_frags(xdpf))) in xdp_release_frame()
339 sinfo = xdp_get_shared_info_from_frame(xdpf); in xdp_release_frame()
346 __xdp_release_frame(xdpf->data, mem); in xdp_release_frame()
352 unsigned int len = xdpf->len; in xdp_get_frame_len()
354 if (likely(!xdp_frame_has_frags(xdpf))) in xdp_get_frame_len()
[all …]
/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlx5/core/en/
A Dxdp.c66 struct xdp_frame *xdpf; in mlx5e_xmit_xdp_buff() local
70 xdpf = xdp_convert_buff_to_frame(xdp); in mlx5e_xmit_xdp_buff()
71 if (unlikely(!xdpf)) in mlx5e_xmit_xdp_buff()
74 xdptxd.data = xdpf->data; in mlx5e_xmit_xdp_buff()
75 xdptxd.len = xdpf->len; in mlx5e_xmit_xdp_buff()
95 xdp_return_frame(xdpf); in mlx5e_xmit_xdp_buff()
100 xdpi.frame.xdpf = xdpf; in mlx5e_xmit_xdp_buff()
120 dma_addr = page_pool_get_dma_addr(page) + (xdpf->data - (void *)xdpf); in mlx5e_xmit_xdp_buff()
668 xdptxd.data = xdpf->data; in mlx5e_xdp_xmit()
669 xdptxd.len = xdpf->len; in mlx5e_xdp_xmit()
[all …]
/linux-6.3-rc2/drivers/net/ethernet/microchip/lan966x/
A Dlan966x_xdp.c62 struct xdp_frame *xdpf = frames[i]; in lan966x_xdp_xmit() local
65 err = lan966x_fdma_xmit_xdpf(port, xdpf, NULL, true); in lan966x_xdp_xmit()
79 struct xdp_frame *xdpf; in lan966x_xdp_run() local
93 xdpf = xdp_convert_buff_to_frame(&xdp); in lan966x_xdp_run()
94 if (!xdpf) in lan966x_xdp_run()
97 return lan966x_fdma_xmit_xdpf(port, xdpf, page, false) ? in lan966x_xdp_run()
A Dlan966x_fdma.c435 xdp_return_frame_rx_napi(dcb_buf->data.xdpf); in lan966x_fdma_tx_clear_buf()
703 struct xdp_frame *xdpf, in lan966x_fdma_xmit_xdpf() argument
727 if (xdpf->headroom < IFH_LEN_BYTES) { in lan966x_fdma_xmit_xdpf()
732 ifh = xdpf->data - IFH_LEN_BYTES; in lan966x_fdma_xmit_xdpf()
738 xdpf->data - IFH_LEN_BYTES, in lan966x_fdma_xmit_xdpf()
739 xdpf->len + IFH_LEN_BYTES, in lan966x_fdma_xmit_xdpf()
748 xdpf->len + IFH_LEN_BYTES, in lan966x_fdma_xmit_xdpf()
759 xdpf->len + IFH_LEN_BYTES, in lan966x_fdma_xmit_xdpf()
764 xdpf->len + IFH_LEN_BYTES, in lan966x_fdma_xmit_xdpf()
771 next_dcb_buf->data.xdpf = xdpf; in lan966x_fdma_xmit_xdpf()
[all …]
/linux-6.3-rc2/drivers/net/ethernet/intel/ixgbe/
A Dixgbe_xsk.c104 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()
423 tx_bi->xdpf = NULL; in ixgbe_xmit_zc()
454 xdp_return_frame(tx_bi->xdpf); in ixgbe_clean_xdp_tx_buffer()
481 if (tx_bi->xdpf) in ixgbe_clean_xdp_tx_irq()
486 tx_bi->xdpf = NULL; in ixgbe_clean_xdp_tx_irq()
560 if (tx_bi->xdpf) in ixgbe_xsk_clean_tx_ring()
565 tx_bi->xdpf = NULL; in ixgbe_xsk_clean_tx_ring()
A Dixgbe_txrx_common.h17 struct xdp_frame *xdpf);
/linux-6.3-rc2/drivers/net/ethernet/sfc/siena/
A Dtx.c213 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 Drx.c257 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()
/linux-6.3-rc2/drivers/net/ethernet/freescale/dpaa/
A Ddpaa_eth.c2232 memmove(aligned_data, xdpf->data, xdpf->len); in dpaa_a050385_wa_xdpf()
2259 memcpy(new_buff + headroom, xdpf->data, xdpf->len); in dpaa_a050385_wa_xdpf()
2266 new_xdpf->len = xdpf->len; in dpaa_a050385_wa_xdpf()
2527 buff_start = xdpf->data - xdpf->headroom; in dpaa_xdp_xmit_frame()
2534 swbp->xdpf = xdpf; in dpaa_xdp_xmit_frame()
2539 qm_fd_set_contig(&fd, xdpf->headroom, xdpf->len); in dpaa_xdp_xmit_frame()
2542 xdpf->headroom + xdpf->len, in dpaa_xdp_xmit_frame()
2575 struct xdp_frame *xdpf; in dpaa_run_xdp() local
2624 if (unlikely(!xdpf)) { in dpaa_run_xdp()
3051 struct xdp_frame *xdpf; in dpaa_xdp_xmit() local
[all …]
/linux-6.3-rc2/drivers/net/ethernet/fungible/funeth/
A Dfuneth_tx.c501 xdp_return_frame(q->info[reclaim_idx].xdpf); in fun_xdpq_clean()
515 bool fun_xdp_tx(struct funeth_txq *q, struct xdp_frame *xdpf) in fun_xdp_tx() argument
517 unsigned int idx, nfrags = 1, ndesc = 1, tot_len = xdpf->len; in fun_xdp_tx()
526 if (unlikely(xdp_frame_has_frags(xdpf))) { in fun_xdp_tx()
527 si = xdp_get_shared_info_from_frame(xdpf); in fun_xdp_tx()
528 tot_len = xdp_get_frame_len(xdpf); in fun_xdp_tx()
540 if (unlikely(fun_map_pkt(q->dma_dev, si, xdpf->data, xdpf->len, dma, in fun_xdp_tx()
559 q->info[idx].xdpf = xdpf; in fun_xdp_tx()
619 xdp_return_frame(q->info[idx].xdpf); in fun_xdpq_purge()
A Dfuneth_txrx.h100 struct xdp_frame *xdpf; /* associated XDP frame (XDP path) */ member
249 bool fun_xdp_tx(struct funeth_txq *q, struct xdp_frame *xdpf);
/linux-6.3-rc2/drivers/net/ethernet/ti/
A Dcpsw_priv.c55 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()
1309 dma, xdpf->len, port); in cpsw_xdp_tx_frame()
1311 if (sizeof(*xmeta) > xdpf->headroom) in cpsw_xdp_tx_frame()
1315 xdpf->data, xdpf->len, port); in cpsw_xdp_tx_frame()
1330 struct xdp_frame *xdpf; in cpsw_run_xdp() local
1347 xdpf = xdp_convert_buff_to_frame(xdp); in cpsw_run_xdp()
1348 if (unlikely(!xdpf)) in cpsw_run_xdp()
[all …]
/linux-6.3-rc2/drivers/net/ethernet/aquantia/atlantic/
A Daq_ring.c349 } else if (buff->xdpf) { in aq_ring_tx_clean()
354 xdp_return_frame_rx_napi(buff->xdpf); in aq_ring_tx_clean()
359 buff->xdpf = NULL; in aq_ring_tx_clean()
406 struct xdp_frame *xdpf = frames[i]; in aq_xdp_xmit() local
422 struct xdp_frame *xdpf; in aq_xdp_run_prog() local
446 xdpf = xdp_convert_buff_to_frame(xdp); in aq_xdp_run_prog()
447 if (unlikely(!xdpf)) in aq_xdp_run_prog()
449 skb = xdp_build_skb_from_frame(xdpf, aq_nic->ndev); in aq_xdp_run_prog()
458 xdpf = xdp_convert_buff_to_frame(xdp); in aq_xdp_run_prog()
459 if (unlikely(!xdpf)) in aq_xdp_run_prog()
[all …]
A Daq_nic.c576 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 …]
/linux-6.3-rc2/drivers/net/ethernet/socionext/
A Dnetsec.c272 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 …]
/linux-6.3-rc2/drivers/net/ethernet/sfc/
A Dtx.c426 struct xdp_frame *xdpf; in efx_xdp_tx_buffers() local
468 xdpf = xdpfs[i]; in efx_xdp_tx_buffers()
476 len = xdpf->len; in efx_xdp_tx_buffers()
480 xdpf->data, len, in efx_xdp_tx_buffers()
487 tx_buffer->xdpf = xdpf; in efx_xdp_tx_buffers()
A Drx.c257 struct xdp_frame *xdpf; in efx_do_xdp() local
312 xdpf = xdp_convert_buff_to_frame(&xdp); in efx_do_xdp()
313 err = efx_xdp_tx_buffers(efx, 1, &xdpf, true); in efx_do_xdp()
/linux-6.3-rc2/drivers/net/ethernet/qlogic/qede/
A Dqede_fp.c332 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 …]
/linux-6.3-rc2/drivers/net/ethernet/engleder/
A Dtsnep_main.c518 len = xdpf->len; in tsnep_xdp_tx_map()
523 xdpf->data; in tsnep_xdp_tx_map()
531 virt_to_page(xdpf->data); in tsnep_xdp_tx_map()
536 dma += sizeof(*xdpf) + xdpf->headroom; in tsnep_xdp_tx_map()
568 if (unlikely(xdp_frame_has_frags(xdpf))) in tsnep_xdp_xmit_frame_ring()
579 entry->xdpf = xdpf; in tsnep_xdp_xmit_frame_ring()
584 entry->xdpf = NULL; in tsnep_xdp_xmit_frame_ring()
612 struct xdp_frame *xdpf = xdp_convert_buff_to_frame(xdp); in tsnep_xdp_xmit_back() local
615 if (unlikely(!xdpf)) in tsnep_xdp_xmit_back()
662 xdp_frame_has_frags(entry->xdpf)) in tsnep_tx_poll()
[all …]
/linux-6.3-rc2/drivers/net/ethernet/broadcom/bnxt/
A Dbnxt_xdp.c117 struct xdp_frame *xdpf) in __bnxt_xmit_xdp_redirect() argument
123 tx_buf->xdpf = xdpf; in __bnxt_xmit_xdp_redirect()
148 xdp_return_frame(tx_buf->xdpf); in bnxt_tx_int_xdp()
150 tx_buf->xdpf = NULL; in bnxt_tx_int_xdp()
/linux-6.3-rc2/drivers/net/ethernet/intel/i40e/
A Di40e_xsk.c572 xdp_return_frame(tx_bi->xdpf); in i40e_clean_xdp_tx_buffer()
612 if (tx_bi->xdpf) { in i40e_clean_xdp_tx_irq()
614 tx_bi->xdpf = NULL; in i40e_clean_xdp_tx_irq()
711 if (tx_bi->xdpf) in i40e_xsk_clean_tx_ring()
716 tx_bi->xdpf = NULL; in i40e_xsk_clean_tx_ring()
A Di40e_txrx.c763 xdp_return_frame(tx_buffer->xdpf); in i40e_unmap_and_free_tx_resource()
971 xdp_return_frame(tx_buf->xdpf); in i40e_clean_tx_irq()
2274 static int i40e_xmit_xdp_ring(struct xdp_frame *xdpf,
2281 if (unlikely(!xdpf)) in i40e_xmit_xdp_tx_ring()
2284 return i40e_xmit_xdp_ring(xdpf, xdp_ring); in i40e_xmit_xdp_tx_ring()
3736 void *data = xdpf->data; in i40e_xmit_xdp_ring()
3737 u32 size = xdpf->len; in i40e_xmit_xdp_ring()
3744 tx_head->bytecount = xdp_get_frame_len(xdpf); in i40e_xmit_xdp_ring()
3746 tx_head->xdpf = xdpf; in i40e_xmit_xdp_ring()
3979 struct xdp_frame *xdpf = frames[i]; in i40e_xdp_xmit() local
[all …]

Completed in 63 milliseconds

123