/Linux-v6.6/include/net/ |
D | xdp_sock_drv.h | 73 static inline dma_addr_t xsk_buff_xdp_get_dma(struct xdp_buff *xdp) in xsk_buff_xdp_get_dma() 80 static inline dma_addr_t xsk_buff_xdp_get_frame_dma(struct xdp_buff *xdp) in xsk_buff_xdp_get_frame_dma() 87 static inline struct xdp_buff *xsk_buff_alloc(struct xsk_buff_pool *pool) in xsk_buff_alloc() 98 static inline u32 xsk_buff_alloc_batch(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 max) in xsk_buff_alloc_batch() 108 static inline void xsk_buff_free(struct xdp_buff *xdp) in xsk_buff_free() 127 static inline void xsk_buff_add_frag(struct xdp_buff *xdp) in xsk_buff_add_frag() 134 static inline struct xdp_buff *xsk_buff_get_frag(struct xdp_buff *first) in xsk_buff_get_frag() 137 struct xdp_buff *ret = NULL; in xsk_buff_get_frag() 150 static inline void xsk_buff_set_size(struct xdp_buff *xdp, u32 size) in xsk_buff_set_size() 168 static inline void xsk_buff_dma_sync_for_cpu(struct xdp_buff *xdp, struct xsk_buff_pool *pool) in xsk_buff_dma_sync_for_cpu() [all …]
|
D | xdp.h | 80 struct xdp_buff { struct 91 static __always_inline bool xdp_buff_has_frags(struct xdp_buff *xdp) in xdp_buff_has_frags() argument 96 static __always_inline void xdp_buff_set_frags_flag(struct xdp_buff *xdp) in xdp_buff_set_frags_flag() 101 static __always_inline void xdp_buff_clear_frags_flag(struct xdp_buff *xdp) in xdp_buff_clear_frags_flag() 106 static __always_inline bool xdp_buff_is_frag_pfmemalloc(struct xdp_buff *xdp) in xdp_buff_is_frag_pfmemalloc() 111 static __always_inline void xdp_buff_set_frag_pfmemalloc(struct xdp_buff *xdp) in xdp_buff_set_frag_pfmemalloc() 117 xdp_init_buff(struct xdp_buff *xdp, u32 frame_sz, struct xdp_rxq_info *rxq) in xdp_init_buff() 125 xdp_prepare_buff(struct xdp_buff *xdp, unsigned char *hard_start, in xdp_prepare_buff() 147 xdp_get_shared_info_from_buff(struct xdp_buff *xdp) in xdp_get_shared_info_from_buff() 152 static __always_inline unsigned int xdp_get_buff_len(struct xdp_buff *xdp) in xdp_get_buff_len() [all …]
|
D | xdp_sock.h | 19 struct xdp_buff; 88 int xsk_generic_rcv(struct xdp_sock *xs, struct xdp_buff *xdp); 89 int __xsk_map_redirect(struct xdp_sock *xs, struct xdp_buff *xdp); 94 static inline int xsk_generic_rcv(struct xdp_sock *xs, struct xdp_buff *xdp) in xsk_generic_rcv() 99 static inline int __xsk_map_redirect(struct xdp_sock *xs, struct xdp_buff *xdp) in __xsk_map_redirect()
|
D | xsk_buff_pool.h | 25 struct xdp_buff xdp; 138 struct xdp_buff *xp_alloc(struct xsk_buff_pool *pool); 139 u32 xp_alloc_batch(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 max);
|
/Linux-v6.6/drivers/net/ethernet/broadcom/bnxt/ |
D | bnxt_xdp.h | 18 struct xdp_buff *xdp); 21 struct xdp_buff xdp, struct page *page, u8 **data_ptr, 31 struct xdp_buff *xdp); 33 struct xdp_buff *xdp); 36 struct xdp_buff *xdp,
|
D | bnxt_xdp.c | 28 struct xdp_buff *xdp) in bnxt_xmit_bd() 104 struct xdp_buff *xdp) in __bnxt_xmit_xdp() 191 struct xdp_buff *xdp) in bnxt_xdp_buff_init() 211 struct xdp_buff *xdp) in bnxt_xdp_buff_frags_free() 232 struct xdp_buff xdp, struct page *page, u8 **data_ptr, in bnxt_rx_xdp() 477 struct page_pool *pool, struct xdp_buff *xdp, in bnxt_xdp_build_skb()
|
/Linux-v6.6/drivers/net/ethernet/freescale/dpaa2/ |
D | dpaa2-xsk.c | 39 struct xdp_buff *xdp_buff; in dpaa2_xsk_run_xdp() local 50 xdp_buff = swa->xsk.xdp_buff; in dpaa2_xsk_run_xdp() 52 xdp_buff->data_hard_start = vaddr; in dpaa2_xsk_run_xdp() 53 xdp_buff->data = vaddr + dpaa2_fd_get_offset(fd); in dpaa2_xsk_run_xdp() 54 xdp_buff->data_end = xdp_buff->data + dpaa2_fd_get_len(fd); in dpaa2_xsk_run_xdp() 55 xdp_set_data_meta_invalid(xdp_buff); in dpaa2_xsk_run_xdp() 56 xdp_buff->rxq = &ch->xdp_rxq; in dpaa2_xsk_run_xdp() 58 xsk_buff_dma_sync_for_cpu(xdp_buff, ch->xsk_pool); in dpaa2_xsk_run_xdp() 59 xdp_act = bpf_prog_run_xdp(xdp_prog, xdp_buff); in dpaa2_xsk_run_xdp() 62 dpaa2_fd_set_offset(fd, xdp_buff->data - vaddr); in dpaa2_xsk_run_xdp() [all …]
|
/Linux-v6.6/drivers/net/ethernet/intel/i40e/ |
D | i40e_xsk.c | 19 static struct xdp_buff **i40e_rx_bi(struct i40e_ring *rx_ring, u32 idx) in i40e_rx_bi() 201 static int i40e_run_xdp_zc(struct i40e_ring *rx_ring, struct xdp_buff *xdp, in i40e_run_xdp_zc() 248 struct xdp_buff **xdp; in i40e_alloc_rx_buffers_zc() 293 struct xdp_buff *xdp) in i40e_construct_skb_zc() 349 struct xdp_buff *xdp_buff, in i40e_handle_xdp_result_zc() argument 359 *rx_bytes = xdp_get_buff_len(xdp_buff); in i40e_handle_xdp_result_zc() 370 xsk_buff_free(xdp_buff); in i40e_handle_xdp_result_zc() 379 skb = i40e_construct_skb_zc(rx_ring, xdp_buff); in i40e_handle_xdp_result_zc() 404 i40e_add_xsk_frag(struct i40e_ring *rx_ring, struct xdp_buff *first, in i40e_add_xsk_frag() 405 struct xdp_buff *xdp, const unsigned int size) in i40e_add_xsk_frag() [all …]
|
D | i40e_trace.h | 165 struct xdp_buff *xdp), 193 struct xdp_buff *xdp), 201 struct xdp_buff *xdp),
|
/Linux-v6.6/tools/testing/selftests/bpf/progs/ |
D | test_xdp_bpf2bpf.c | 23 struct xdp_buff { struct 45 int BPF_PROG(trace_on_entry, struct xdp_buff *xdp) in BPF_PROG() argument 62 int BPF_PROG(trace_on_exit, struct xdp_buff *xdp, int ret) in BPF_PROG()
|
D | type_cast.c | 28 struct xdp_buff *kctx = bpf_cast_to_kern_ctx(ctx); in md_xdp()
|
/Linux-v6.6/drivers/net/ethernet/intel/ice/ |
D | ice_txrx_lib.h | 20 ice_set_rx_bufs_act(struct xdp_buff *xdp, const struct ice_rx_ring *rx_ring, in ice_set_rx_bufs_act() 144 int ice_xmit_xdp_buff(struct xdp_buff *xdp, struct ice_tx_ring *xdp_ring); 145 int __ice_xmit_xdp_ring(struct xdp_buff *xdp, struct ice_tx_ring *xdp_ring,
|
D | ice_xsk.c | 15 static struct xdp_buff **ice_xdp_buf(struct ice_rx_ring *rx_ring, u32 idx) in ice_xdp_buf() 454 static u16 ice_fill_rx_descs(struct xsk_buff_pool *pool, struct xdp_buff **xdp, in ice_fill_rx_descs() 491 struct xdp_buff **xdp; in __ice_alloc_rx_bufs_zc() 558 ice_construct_skb_zc(struct ice_rx_ring *rx_ring, struct xdp_buff *xdp) in ice_construct_skb_zc() 684 static int ice_xmit_xdp_tx_zc(struct xdp_buff *xdp, in ice_xmit_xdp_tx_zc() 692 struct xdp_buff *head; in ice_xmit_xdp_tx_zc() 765 ice_run_xdp_zc(struct ice_rx_ring *rx_ring, struct xdp_buff *xdp, in ice_run_xdp_zc() 809 ice_add_xsk_frag(struct ice_rx_ring *rx_ring, struct xdp_buff *first, in ice_add_xsk_frag() 810 struct xdp_buff *xdp, const unsigned int size) in ice_add_xsk_frag() 849 struct xdp_buff *first = NULL; in ice_clean_rx_irq_zc() [all …]
|
D | ice_txrx.h | 174 struct xdp_buff *xdp; /* used for XDP_TX ZC */ 316 struct xdp_buff **xdp_buf; 318 struct xdp_buff xdp;
|
/Linux-v6.6/Documentation/networking/ |
D | xdp-rx-metadata.rst | 34 Within an XDP frame, the metadata layout (accessed via ``xdp_buff``) is 42 xdp_buff->data_meta xdp_buff->data 75 into the kernel. The kernel creates the ``skb`` out of the ``xdp_buff`` 77 the descriptors and populate ``skb`` metadata when doing this ``xdp_buff->skb``
|
/Linux-v6.6/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/ |
D | rx.c | 11 static struct mlx5e_xdp_buff *xsk_buff_to_mxbuf(struct xdp_buff *xdp) in xsk_buff_to_mxbuf() 25 struct xdp_buff **xsk_buffs; in mlx5e_xsk_alloc_rx_mpwqe() 34 xsk_buffs = (struct xdp_buff **)wi->alloc_units.xsk_buffs; in mlx5e_xsk_alloc_rx_mpwqe() 163 struct xdp_buff **buffs; in mlx5e_xsk_alloc_rx_wqes_batched() 225 static struct sk_buff *mlx5e_xsk_construct_skb(struct mlx5e_rq *rq, struct xdp_buff *xdp) in mlx5e_xsk_construct_skb()
|
/Linux-v6.6/include/linux/ |
D | filter.h | 37 struct xdp_buff; 775 u32 xdp_master_redirect(struct xdp_buff *xdp); 974 struct xdp_buff *xdp, struct bpf_prog *prog); 976 struct xdp_buff *xdp, 979 struct xdp_buff *xdp, 1540 int __bpf_xdp_load_bytes(struct xdp_buff *xdp, u32 offset, void *buf, u32 len); 1541 int __bpf_xdp_store_bytes(struct xdp_buff *xdp, u32 offset, void *buf, u32 len); 1542 void *bpf_xdp_pointer(struct xdp_buff *xdp, u32 offset, u32 len); 1543 void bpf_xdp_copy_buf(struct xdp_buff *xdp, unsigned long off, 1558 static inline int __bpf_xdp_load_bytes(struct xdp_buff *xdp, u32 offset, in __bpf_xdp_load_bytes() [all …]
|
/Linux-v6.6/net/netfilter/ |
D | nf_conntrack_bpf.c | 256 struct xdp_buff *ctx = (struct xdp_buff *)xdp_ctx; in bpf_xdp_ct_alloc() 290 struct xdp_buff *ctx = (struct xdp_buff *)xdp_ctx; in bpf_xdp_ct_lookup()
|
/Linux-v6.6/drivers/net/ethernet/netronome/nfp/ |
D | nfp_net_xsk.c | 18 struct xdp_buff *xdp) in nfp_net_xsk_rx_bufs_stash() 62 struct xdp_buff *xdp; in nfp_net_xsk_rx_ring_fill_freelist()
|
/Linux-v6.6/drivers/net/vmxnet3/ |
D | vmxnet3_xdp.c | 251 vmxnet3_run_xdp(struct vmxnet3_rx_queue *rq, struct xdp_buff *xdp, in vmxnet3_run_xdp() 304 const struct xdp_buff *xdp) in vmxnet3_build_skb() 331 struct xdp_buff xdp; in vmxnet3_process_xdp_small() 377 struct xdp_buff xdp; in vmxnet3_process_xdp()
|
/Linux-v6.6/drivers/net/ethernet/engleder/ |
D | tsnep.h | 109 struct xdp_buff *xdp; 132 struct xdp_buff **xdp_batch;
|
/Linux-v6.6/net/xdp/ |
D | xsk_buff_pool.c | 524 struct xdp_buff *xp_alloc(struct xsk_buff_pool *pool) in xp_alloc() 551 static u32 xp_alloc_new_from_fq(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 max) in xp_alloc_new_from_fq() 594 static u32 xp_alloc_reused(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 nb_entries) in xp_alloc_reused() 614 u32 xp_alloc_batch(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 max) in xp_alloc_batch() 619 struct xdp_buff *buff; in xp_alloc_batch()
|
/Linux-v6.6/drivers/net/ethernet/freescale/enetc/ |
D | enetc.c | 1420 struct xdp_buff *xdp_buff, u16 size) in enetc_map_rx_buff_to_xdp() argument 1428 xdp_prepare_buff(xdp_buff, hard_start - rx_ring->buffer_offset, in enetc_map_rx_buff_to_xdp() 1433 u16 size, struct xdp_buff *xdp_buff) in enetc_add_rx_buff_to_xdp() argument 1435 struct skb_shared_info *shinfo = xdp_get_shared_info_from_buff(xdp_buff); in enetc_add_rx_buff_to_xdp() 1442 if (!xdp_buff_has_frags(xdp_buff)) { in enetc_add_rx_buff_to_xdp() 1443 xdp_buff_set_frags_flag(xdp_buff); in enetc_add_rx_buff_to_xdp() 1451 xdp_buff_set_frag_pfmemalloc(xdp_buff); in enetc_add_rx_buff_to_xdp() 1462 int *cleaned_cnt, struct xdp_buff *xdp_buff) in enetc_build_xdp_buff() argument 1466 xdp_init_buff(xdp_buff, ENETC_RXB_TRUESIZE, &rx_ring->xdp.rxq); in enetc_build_xdp_buff() 1468 enetc_map_rx_buff_to_xdp(rx_ring, *i, xdp_buff, size); in enetc_build_xdp_buff() [all …]
|
/Linux-v6.6/net/bpf/ |
D | test_run.c | 101 struct xdp_buff orig_ctx; 102 struct xdp_buff ctx; 111 struct xdp_buff *orig_ctx; 132 struct xdp_buff *new_ctx, *orig_ctx; in xdp_test_run_init_page() 159 static int xdp_test_run_setup(struct xdp_test_data *xdp, struct xdp_buff *orig_ctx) in xdp_test_run_setup() 290 struct xdp_buff *ctx; in xdp_test_run_batch() 364 static int bpf_test_run_xdp_live(struct bpf_prog *prog, struct xdp_buff *ctx, in bpf_test_run_xdp_live() 1080 static int xdp_convert_md_to_buff(struct xdp_md *xdp_md, struct xdp_buff *xdp) in xdp_convert_md_to_buff() 1126 static void xdp_convert_buff_to_md(struct xdp_buff *xdp, struct xdp_md *xdp_md) in xdp_convert_buff_to_md() 1150 struct xdp_buff xdp = {}; in bpf_prog_test_run_xdp()
|
/Linux-v6.6/drivers/net/ethernet/netronome/nfp/nfd3/ |
D | nfd3.h | 72 struct xdp_buff *xdp;
|