| /Linux-v5.15/net/xdp/ |
| D | xsk_queue.h | 31 struct xdp_desc desc[] ____cacheline_aligned_in_smp; 129 struct xdp_desc *desc) in xp_aligned_validate_desc() 149 struct xdp_desc *desc) in xp_unaligned_validate_desc() 169 struct xdp_desc *desc) in xp_validate_desc() 176 struct xdp_desc *d, in xskq_cons_is_valid_desc() 187 struct xdp_desc *desc, in xskq_cons_read_desc() 205 struct xdp_desc *descs, in xskq_cons_read_desc_batch() 273 struct xdp_desc *desc, in xskq_cons_peek_desc() 281 static inline u32 xskq_cons_peek_desc_batch(struct xsk_queue *q, struct xdp_desc *descs, in xskq_cons_peek_desc_batch() 364 static inline u32 xskq_prod_reserve_addr_batch(struct xsk_queue *q, struct xdp_desc *descs, in xskq_prod_reserve_addr_batch()
|
| D | xsk.c | 331 bool xsk_tx_peek_desc(struct xsk_buff_pool *pool, struct xdp_desc *desc) in xsk_tx_peek_desc() 361 static u32 xsk_tx_peek_release_fallback(struct xsk_buff_pool *pool, struct xdp_desc *descs, in xsk_tx_peek_release_fallback() 373 u32 xsk_tx_peek_release_desc_batch(struct xsk_buff_pool *pool, struct xdp_desc *descs, in xsk_tx_peek_release_desc_batch() 449 struct xdp_desc *desc) in xsk_build_skb_zerocopy() 497 struct xdp_desc *desc) in xsk_build_skb() 544 struct xdp_desc desc; in xsk_generic_xmit()
|
| /Linux-v5.15/tools/lib/bpf/ |
| D | xsk.h | 130 static inline struct xdp_desc *xsk_ring_prod__tx_desc(struct xsk_ring_prod *tx, in xsk_ring_prod__tx_desc() 133 struct xdp_desc *descs = (struct xdp_desc *)tx->ring; in xsk_ring_prod__tx_desc() 138 static inline const struct xdp_desc * 141 const struct xdp_desc *descs = (const struct xdp_desc *)rx->ring; in xsk_ring_cons__rx_desc()
|
| D | xsk.c | 1108 xsk->config.rx_size * sizeof(struct xdp_desc), in xsk_socket__create_shared() 1129 xsk->config.tx_size * sizeof(struct xdp_desc), in xsk_socket__create_shared() 1183 xsk->config.tx_size * sizeof(struct xdp_desc)); in xsk_socket__create_shared() 1187 xsk->config.rx_size * sizeof(struct xdp_desc)); in xsk_socket__create_shared() 1227 size_t desc_sz = sizeof(struct xdp_desc); in xsk_socket__delete()
|
| /Linux-v5.15/include/net/ |
| D | xdp_sock_drv.h | 15 bool xsk_tx_peek_desc(struct xsk_buff_pool *pool, struct xdp_desc *desc); 16 u32 xsk_tx_peek_release_desc_batch(struct xsk_buff_pool *pool, struct xdp_desc *desc, u32 max); 127 struct xdp_desc *desc) in xsk_tx_peek_desc() 132 static inline u32 xsk_tx_peek_release_desc_batch(struct xsk_buff_pool *pool, struct xdp_desc *desc, in xsk_tx_peek_release_desc_batch()
|
| D | xsk_buff_pool.h | 15 struct xdp_desc;
|
| /Linux-v5.15/drivers/net/ethernet/intel/i40e/ |
| D | i40e_xsk.c | 400 static void i40e_xmit_pkt(struct i40e_ring *xdp_ring, struct xdp_desc *desc, in i40e_xmit_pkt() 417 static void i40e_xmit_pkt_batch(struct i40e_ring *xdp_ring, struct xdp_desc *desc, in i40e_xmit_pkt_batch() 441 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() 472 struct xdp_desc *descs = xdp_ring->xsk_descs; in i40e_xmit_zc()
|
| D | i40e_txrx.h | 393 struct xdp_desc *xsk_descs; /* For storing descriptors in the AF_XDP ZC path */
|
| /Linux-v5.15/tools/include/uapi/linux/ |
| D | if_xdp.h | 103 struct xdp_desc { struct
|
| /Linux-v5.15/include/uapi/linux/ |
| D | if_xdp.h | 103 struct xdp_desc { struct
|
| /Linux-v5.15/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/ |
| D | tx.c | 82 struct xdp_desc desc; in mlx5e_xsk_tx()
|
| /Linux-v5.15/tools/testing/selftests/bpf/ |
| D | xdpxceiver.c | 507 static bool is_pkt_valid(struct pkt *pkt, void *buffer, const struct xdp_desc *desc) in is_pkt_valid() 606 const struct xdp_desc *desc = xsk_ring_cons__rx_desc(&xsk->rx, idx_rx++); in receive_pkts() 632 struct xdp_desc *tx_desc = xsk_ring_prod__tx_desc(&xsk->tx, idx + i); in __send_pkts()
|
| /Linux-v5.15/Documentation/networking/ |
| D | af_xdp.rst | 186 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 488 // struct xdp_desc *desc; 500 // typedef struct xdp_desc RING_TYPE;
|
| /Linux-v5.15/drivers/net/ethernet/intel/igc/ |
| D | igc_main.c | 2597 struct xdp_desc xdp_desc; in igc_xdp_xmit_zc() local 2607 while (xsk_tx_peek_desc(pool, &xdp_desc) && budget--) { in igc_xdp_xmit_zc() 2614 xdp_desc.len; in igc_xdp_xmit_zc() 2615 olinfo_status = xdp_desc.len << IGC_ADVTXD_PAYLEN_SHIFT; in igc_xdp_xmit_zc() 2617 dma = xsk_buff_raw_get_dma(pool, xdp_desc.addr); in igc_xdp_xmit_zc() 2618 xsk_buff_raw_dma_sync_for_device(pool, dma, xdp_desc.len); in igc_xdp_xmit_zc() 2628 bi->bytecount = xdp_desc.len; in igc_xdp_xmit_zc() 2633 netdev_tx_sent_queue(txring_txq(ring), xdp_desc.len); in igc_xdp_xmit_zc()
|
| /Linux-v5.15/drivers/net/ethernet/intel/ixgbe/ |
| D | ixgbe_xsk.c | 386 struct xdp_desc desc; in ixgbe_xmit_zc()
|
| /Linux-v5.15/drivers/net/ethernet/intel/ice/ |
| D | ice_xsk.c | 625 struct xdp_desc desc; in ice_xmit_zc()
|
| /Linux-v5.15/samples/bpf/ |
| D | xdp_sample_user.c | 142 struct xdp_desc { struct 1318 (struct xdp_desc){ ifindex, prog_id, xdp_flags }; in sample_install_xdp()
|
| D | xdpsock_user.c | 1280 struct xdp_desc *tx_desc = xsk_ring_prod__tx_desc(&xsk->tx, in tx_only()
|
| /Linux-v5.15/drivers/net/ethernet/stmicro/stmmac/ |
| D | stmmac_main.c | 2355 struct xdp_desc xdp_desc; in stmmac_xdp_xmit_zc() local 2376 if (!xsk_tx_peek_desc(pool, &xdp_desc)) in stmmac_xdp_xmit_zc() 2386 dma_addr = xsk_buff_raw_get_dma(pool, xdp_desc.addr); in stmmac_xdp_xmit_zc() 2387 xsk_buff_raw_dma_sync_for_device(pool, dma_addr, xdp_desc.len); in stmmac_xdp_xmit_zc() 2399 tx_q->tx_skbuff_dma[entry].len = xdp_desc.len; in stmmac_xdp_xmit_zc() 2420 stmmac_prepare_tx_desc(priv, tx_desc, 1, xdp_desc.len, in stmmac_xdp_xmit_zc() 2422 xdp_desc.len); in stmmac_xdp_xmit_zc()
|