Home
last modified time | relevance | path

Searched refs:xdp_desc (Results 1 – 25 of 27) sorted by relevance

12

/linux-6.15/net/xdp/
H A Dxsk_queue.h31 struct xdp_desc desc[] ____cacheline_aligned_in_smp;
144 struct xdp_desc *desc) in xp_aligned_validate_desc()
165 struct xdp_desc *desc) in xp_unaligned_validate_desc()
186 struct xdp_desc *desc) in xp_validate_desc()
198 struct xdp_desc *d, in xskq_cons_is_valid_desc()
209 struct xdp_desc *desc, in xskq_cons_read_desc()
230 struct xdp_desc *desc, struct parsed_desc *parsed) in parse_desc()
241 struct xdp_desc *descs = pool->tx_descs; in xskq_cons_read_desc_batch()
317 struct xdp_desc *desc, in xskq_cons_peek_desc()
393 static inline void xskq_prod_write_addr_batch(struct xsk_queue *q, struct xdp_desc *descs, in xskq_prod_write_addr_batch()
H A Dxsk.c419 bool xsk_tx_peek_desc(struct xsk_buff_pool *pool, struct xdp_desc *desc) in xsk_tx_peek_desc()
469 struct xdp_desc *descs = pool->tx_descs; in xsk_tx_peek_release_fallback()
604 struct xdp_desc *desc) in xsk_build_skb_zerocopy()
657 struct xdp_desc *desc) in xsk_build_skb()
784 struct xdp_desc desc; in __xsk_generic_xmit()
/linux-6.15/tools/testing/selftests/bpf/
H A Dxsk.h65 static inline struct xdp_desc *xsk_ring_prod__tx_desc(struct xsk_ring_prod *tx, in xsk_ring_prod__tx_desc()
68 struct xdp_desc *descs = (struct xdp_desc *)tx->ring; in xsk_ring_prod__tx_desc()
73 static inline const struct xdp_desc *
76 const struct xdp_desc *descs = (const struct xdp_desc *)rx->ring; in xsk_ring_cons__rx_desc()
H A Dxsk.c626 xsk->config.rx_size * sizeof(struct xdp_desc), in xsk_socket__create_shared()
647 xsk->config.tx_size * sizeof(struct xdp_desc), in xsk_socket__create_shared()
693 xsk->config.tx_size * sizeof(struct xdp_desc)); in xsk_socket__create_shared()
697 xsk->config.rx_size * sizeof(struct xdp_desc)); in xsk_socket__create_shared()
748 size_t desc_sz = sizeof(struct xdp_desc); in xsk_socket__delete()
H A Dxdp_hw_metadata.c357 struct xdp_desc *tx_desc; in ping_pong()
446 const struct xdp_desc *rx_desc; in verify_metadata()
/linux-6.15/drivers/net/ethernet/freescale/dpaa2/
H A Ddpaa2-xsk.c335 struct xdp_desc *xdp_desc) in dpaa2_xsk_tx_build_fd() argument
354 addr = xsk_buff_raw_get_dma(ch->xsk_pool, xdp_desc->addr); in dpaa2_xsk_tx_build_fd()
355 xsk_buff_raw_dma_sync_for_device(ch->xsk_pool, addr, xdp_desc->len); in dpaa2_xsk_tx_build_fd()
359 dpaa2_sg_set_len(sgt, xdp_desc->len); in dpaa2_xsk_tx_build_fd()
379 dpaa2_fd_set_len(fd, xdp_desc->len); in dpaa2_xsk_tx_build_fd()
393 struct xdp_desc *xdp_descs = ch->xsk_pool->tx_descs; in dpaa2_xsk_tx()
/linux-6.15/drivers/net/ethernet/marvell/octeontx2/nic/
H A Dotx2_xsk.c202 struct xdp_desc *xdp_desc = pool->tx_descs; in otx2_zc_napi_handler() local
213 dma_addr = xsk_buff_raw_get_dma(pool, xdp_desc[i].addr); in otx2_zc_napi_handler()
214 err = otx2_xdp_sq_append_pkt(pfvf, NULL, dma_addr, xdp_desc[i].len, in otx2_zc_napi_handler()
/linux-6.15/include/net/
H A Dxdp_sock_drv.h24 bool xsk_tx_peek_desc(struct xsk_buff_pool *pool, struct xdp_desc *desc);
95 static inline bool xsk_is_eop_desc(const struct xdp_desc *desc) in xsk_is_eop_desc()
270 struct xdp_desc *desc) in xsk_tx_peek_desc()
362 static inline bool xsk_is_eop_desc(const struct xdp_desc *desc) in xsk_is_eop_desc()
H A Dxsk_buff_pool.h17 struct xdp_desc;
71 struct xdp_desc *tx_descs;
196 static inline bool xp_mb_desc(const struct xdp_desc *desc) in xp_mb_desc()
/linux-6.15/Documentation/networking/
H A Dxsk-tx-metadata.rst26 ``xdp_desc->addr`` in the umem frame. Within a frame, the metadata
36 xdp_desc->addr
40 use ``xdp_desc->addr - tx_metadata_len`` to locate
59 packet's ``struct xdp_desc`` descriptor should set ``XDP_TX_METADATA``
H A Daf_xdp.rst186 is a struct xdp_desc descriptor. The descriptor contains UMEM offset
192 The user application consumes struct xdp_desc descriptors from this
198 The TX ring is used to send frames. The struct xdp_desc descriptor is
204 The user application produces struct xdp_desc descriptors to this
581 // struct xdp_desc *desc;
593 // typedef struct xdp_desc RING_TYPE;
647 struct xdp_desc *desc = xsk_ring_cons__rx_desc(&xsk->rx, idx_rx++);
690 struct xdp_desc *tx_desc;
/linux-6.15/tools/include/uapi/linux/
H A Dif_xdp.h165 struct xdp_desc { struct
/linux-6.15/include/uapi/linux/
H A Dif_xdp.h165 struct xdp_desc { struct
/linux-6.15/drivers/net/ethernet/intel/i40e/
H A Di40e_xsk.c508 static void i40e_xmit_pkt(struct i40e_ring *xdp_ring, struct xdp_desc *desc, in i40e_xmit_pkt()
525 static void i40e_xmit_pkt_batch(struct i40e_ring *xdp_ring, struct xdp_desc *desc, in i40e_xmit_pkt_batch()
550 static void i40e_fill_tx_hw_ring(struct i40e_ring *xdp_ring, struct xdp_desc *descs, u32 nb_pkts, in i40e_fill_tx_hw_ring()
581 struct xdp_desc *descs = xdp_ring->xsk_pool->tx_descs; in i40e_xmit_zc()
/linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/
H A Dtx.c80 struct xdp_desc desc; in mlx5e_xsk_tx()
/linux-6.15/drivers/net/ethernet/intel/ice/
H A Dice_xsk.c960 struct xsk_buff_pool *xsk_pool, struct xdp_desc *desc, in ice_xmit_pkt()
986 struct xdp_desc *descs, in ice_xmit_pkt_batch()
1021 struct xdp_desc *descs, u32 nb_pkts, in ice_fill_tx_hw_ring()
1043 struct xdp_desc *descs = xsk_pool->tx_descs; in ice_xmit_zc()
/linux-6.15/tools/testing/selftests/bpf/prog_tests/
H A Dxdp_metadata.c139 struct xdp_desc *tx_desc; in generate_packet()
261 const struct xdp_desc *rx_desc; in verify_xsk_metadata()
/linux-6.15/drivers/net/ethernet/netronome/nfp/nfd3/
H A Dxsk.c336 struct xdp_desc desc[NFP_NET_XSK_TX_BATCH]; in nfp_nfd3_xsk_tx()
/linux-6.15/drivers/net/ethernet/intel/ixgbe/
H A Dixgbe_xsk.c397 struct xdp_desc desc; in ixgbe_xmit_zc()
/linux-6.15/drivers/net/ethernet/intel/igb/
H A Digb_xsk.c468 struct xdp_desc *descs = xsk_pool->tx_descs; in igb_xmit_zc()
/linux-6.15/drivers/net/ethernet/intel/igc/
H A Digc_main.c3025 struct xdp_desc xdp_desc; in igc_xdp_xmit_zc() local
3045 while (budget >= 4 && xsk_tx_peek_desc(pool, &xdp_desc)) { in igc_xdp_xmit_zc()
3055 IGC_TXD_DCMD | xdp_desc.len; in igc_xdp_xmit_zc()
3056 olinfo_status = xdp_desc.len << IGC_ADVTXD_PAYLEN_SHIFT; in igc_xdp_xmit_zc()
3058 dma = xsk_buff_raw_get_dma(pool, xdp_desc.addr); in igc_xdp_xmit_zc()
3059 meta = xsk_buff_get_metadata(pool, xdp_desc.addr); in igc_xdp_xmit_zc()
3060 xsk_buff_raw_dma_sync_for_device(pool, dma, xdp_desc.len); in igc_xdp_xmit_zc()
3086 bi->bytecount = xdp_desc.len; in igc_xdp_xmit_zc()
3091 netdev_tx_sent_queue(txring_txq(ring), xdp_desc.len); in igc_xdp_xmit_zc()
/linux-6.15/drivers/net/ethernet/stmicro/stmmac/
H A Dstmmac_main.c2574 struct xdp_desc xdp_desc; in stmmac_xdp_xmit_zc() local
2598 if (!xsk_tx_peek_desc(pool, &xdp_desc)) in stmmac_xdp_xmit_zc()
2603 xdp_desc.len > priv->est->max_sdu[queue]) { in stmmac_xdp_xmit_zc()
2615 dma_addr = xsk_buff_raw_get_dma(pool, xdp_desc.addr); in stmmac_xdp_xmit_zc()
2616 meta = xsk_buff_get_metadata(pool, xdp_desc.addr); in stmmac_xdp_xmit_zc()
2617 xsk_buff_raw_dma_sync_for_device(pool, dma_addr, xdp_desc.len); in stmmac_xdp_xmit_zc()
2629 tx_q->tx_skbuff_dma[entry].len = xdp_desc.len; in stmmac_xdp_xmit_zc()
2657 stmmac_prepare_tx_desc(priv, tx_desc, 1, xdp_desc.len, in stmmac_xdp_xmit_zc()
2659 xdp_desc.len); in stmmac_xdp_xmit_zc()
/linux-6.15/samples/bpf/
H A Dxdp_sample_user.c144 struct xdp_desc { struct
1319 (struct xdp_desc){ ifindex, prog_id, xdp_flags }; in sample_install_xdp()
/linux-6.15/drivers/net/ethernet/engleder/
H A Dtsnep_main.c761 static int tsnep_xdp_tx_map_zc(struct xdp_desc *xdpd, struct tsnep_tx *tx) in tsnep_xdp_tx_map_zc()
780 static void tsnep_xdp_xmit_frame_ring_zc(struct xdp_desc *xdpd, in tsnep_xdp_xmit_frame_ring_zc()
794 struct xdp_desc *descs = tx->xsk_pool->tx_descs; in tsnep_xdp_xmit_zc()
/linux-6.15/drivers/net/ethernet/google/gve/
H A Dgve_tx.c949 struct xdp_desc desc; in gve_xsk_tx()

12