| /linux-6.15/include/net/ |
| H A D | xdp_sock_drv.h | 111 static inline void xsk_buff_free(struct xdp_buff *xdp) in xsk_buff_free() 130 static inline bool xsk_buff_add_frag(struct xdp_buff *head, in xsk_buff_add_frag() 131 struct xdp_buff *xdp) in xsk_buff_add_frag() 147 static inline struct xdp_buff *xsk_buff_get_frag(const struct xdp_buff *first) in xsk_buff_get_frag() 150 struct xdp_buff *ret = NULL; in xsk_buff_get_frag() 163 static inline void xsk_buff_del_tail(struct xdp_buff *tail) in xsk_buff_del_tail() 170 static inline struct xdp_buff *xsk_buff_get_tail(struct xdp_buff *first) in xsk_buff_get_tail() 377 static inline void xsk_buff_free(struct xdp_buff *xdp) in xsk_buff_free() 382 struct xdp_buff *xdp) in xsk_buff_add_frag() 387 static inline struct xdp_buff *xsk_buff_get_frag(const struct xdp_buff *first) in xsk_buff_get_frag() [all …]
|
| H A D | xdp.h | 81 struct xdp_buff { struct 108 xdp_buff_is_frag_pfmemalloc(const struct xdp_buff *xdp) in xdp_buff_is_frag_pfmemalloc() 149 xdp_get_shared_info_from_buff(const struct xdp_buff *xdp) in xdp_get_shared_info_from_buff() 155 xdp_get_buff_len(const struct xdp_buff *xdp) in xdp_get_buff_len() 350 struct xdp_buff *xdp) in xdp_convert_frame_to_buff() 361 int xdp_update_frame_from_buff(const struct xdp_buff *xdp, in xdp_update_frame_from_buff() 410 bool napi_direct, struct xdp_buff *xdp); 413 void xdp_return_buff(struct xdp_buff *xdp); 498 xdp_set_data_meta_invalid(struct xdp_buff *xdp) in xdp_set_data_meta_invalid() 504 xdp_data_meta_unsupported(const struct xdp_buff *xdp) in xdp_data_meta_unsupported() [all …]
|
| H A D | xdp_sock.h | 21 struct xdp_buff; 124 int xsk_generic_rcv(struct xdp_sock *xs, struct xdp_buff *xdp); 125 int __xsk_map_redirect(struct xdp_sock *xs, struct xdp_buff *xdp); 206 static inline int xsk_generic_rcv(struct xdp_sock *xs, struct xdp_buff *xdp) in xsk_generic_rcv() 211 static inline int __xsk_map_redirect(struct xdp_sock *xs, struct xdp_buff *xdp) in __xsk_map_redirect()
|
| H A D | xsk_buff_pool.h | 26 struct xdp_buff xdp; 141 struct xdp_buff *xp_alloc(struct xsk_buff_pool *pool); 142 u32 xp_alloc_batch(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 max);
|
| /linux-6.15/drivers/net/ethernet/broadcom/bnxt/ |
| H A 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);
|
| H A D | bnxt_xdp.c | 29 struct xdp_buff *xdp) in bnxt_xmit_bd() 97 struct xdp_buff *xdp) in __bnxt_xmit_xdp() 184 struct xdp_buff *xdp) in bnxt_xdp_buff_init() 204 struct xdp_buff *xdp) in bnxt_xdp_buff_frags_free() 225 struct xdp_buff *xdp, struct page *page, u8 **data_ptr, in bnxt_rx_xdp() 464 struct page_pool *pool, struct xdp_buff *xdp) in bnxt_xdp_build_skb()
|
| /linux-6.15/drivers/net/ethernet/freescale/dpaa2/ |
| H A 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); 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-6.15/tools/testing/selftests/bpf/progs/ |
| H A 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()
|
| /linux-6.15/drivers/net/ethernet/intel/i40e/ |
| H A D | i40e_xsk.c | 16 static struct xdp_buff **i40e_rx_bi(struct i40e_ring *rx_ring, u32 idx) in i40e_rx_bi() 198 static int i40e_run_xdp_zc(struct i40e_ring *rx_ring, struct xdp_buff *xdp, in i40e_run_xdp_zc() 245 struct xdp_buff **xdp; in i40e_alloc_rx_buffers_zc() 290 struct xdp_buff *xdp) in i40e_construct_skb_zc() 345 struct xdp_buff *xdp_buff, in i40e_handle_xdp_result_zc() argument 355 *rx_bytes = xdp_get_buff_len(xdp_buff); in i40e_handle_xdp_result_zc() 366 xsk_buff_free(xdp_buff); in i40e_handle_xdp_result_zc() 375 skb = i40e_construct_skb_zc(rx_ring, xdp_buff); in i40e_handle_xdp_result_zc() 412 struct xdp_buff *first = NULL; in i40e_clean_rx_irq_zc() 430 struct xdp_buff *bi; in i40e_clean_rx_irq_zc() [all …]
|
| H A D | i40e_trace.h | 165 struct xdp_buff *xdp), 193 struct xdp_buff *xdp), 201 struct xdp_buff *xdp),
|
| /linux-6.15/drivers/net/ethernet/intel/ice/ |
| H A D | ice_txrx_lib.h | 114 int __ice_xmit_xdp_ring(struct xdp_buff *xdp, struct ice_tx_ring *xdp_ring, 125 ice_xdp_meta_set_desc(struct xdp_buff *xdp, in ice_xdp_meta_set_desc() 129 xdp_buff); in ice_xdp_meta_set_desc()
|
| H A D | ice_txrx.h | 174 struct xdp_buff *xdp; /* used for XDP_TX ZC */ 266 struct xdp_buff xdp_buff; member 272 static_assert(offsetof(struct ice_xdp_buff, xdp_buff) == 0); 329 struct xdp_buff **xdp_buf; 334 struct xdp_buff xdp;
|
| H A D | ice_xsk.c | 16 static struct xdp_buff **ice_xdp_buf(struct ice_rx_ring *rx_ring, u32 idx) in ice_xdp_buf() 438 static u16 ice_fill_rx_descs(struct xsk_buff_pool *pool, struct xdp_buff **xdp, in ice_fill_rx_descs() 482 struct xdp_buff **xdp; in __ice_alloc_rx_bufs_zc() 550 ice_construct_skb_zc(struct ice_rx_ring *rx_ring, struct xdp_buff *xdp) in ice_construct_skb_zc() 678 static int ice_xmit_xdp_tx_zc(struct xdp_buff *xdp, in ice_xmit_xdp_tx_zc() 687 struct xdp_buff *head; in ice_xmit_xdp_tx_zc() 761 ice_run_xdp_zc(struct ice_rx_ring *rx_ring, struct xdp_buff *xdp, in ice_run_xdp_zc() 820 struct xdp_buff *first = NULL; in ice_clean_rx_irq_zc() 840 struct xdp_buff *xdp; in ice_clean_rx_irq_zc() 1153 struct xdp_buff *xdp = *ice_xdp_buf(rx_ring, ntc); in ice_xsk_clean_rx_ring()
|
| /linux-6.15/net/xfrm/ |
| H A D | xfrm_state_bpf.c | 67 struct xdp_buff *xdp = (struct xdp_buff *)ctx; in bpf_xdp_get_xfrm_state()
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/ |
| H A 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-6.15/Documentation/networking/ |
| H A D | xdp-rx-metadata.rst | 42 Within an XDP frame, the metadata layout (accessed via ``xdp_buff``) is 50 xdp_buff->data_meta xdp_buff->data 83 into the kernel. The kernel creates the ``skb`` out of the ``xdp_buff`` 85 the descriptors and populate ``skb`` metadata when doing this ``xdp_buff->skb``
|
| /linux-6.15/net/netfilter/ |
| H A D | nf_flow_table_bpf.c | 62 struct xdp_buff *xdp = (struct xdp_buff *)ctx; in bpf_xdp_flow_lookup()
|
| H A D | nf_conntrack_bpf.c | 296 struct xdp_buff *ctx = (struct xdp_buff *)xdp_ctx; in bpf_xdp_ct_alloc() 330 struct xdp_buff *ctx = (struct xdp_buff *)xdp_ctx; in bpf_xdp_ct_lookup()
|
| /linux-6.15/drivers/net/ethernet/intel/igb/ |
| H A D | igb_xsk.c | 176 static u16 igb_fill_rx_descs(struct xsk_buff_pool *pool, struct xdp_buff **xdp, in igb_fill_rx_descs() 207 struct xdp_buff **xdp; in igb_alloc_rx_buffers_zc() 256 struct xdp_buff *xdp = rx_ring->rx_buffer_info_zc[ntc]; in igb_clean_rx_ring_zc() 266 struct xdp_buff *xdp, in igb_construct_skb_zc() 295 struct xdp_buff *xdp, struct xsk_buff_pool *xsk_pool, in igb_run_xdp_zc() 360 struct xdp_buff *xdp; in igb_clean_rx_irq_zc()
|
| /linux-6.15/net/core/ |
| H A D | xdp.c | 433 bool napi_direct, struct xdp_buff *xdp) in __xdp_return() 542 void xdp_return_frag(netmem_ref netmem, const struct xdp_buff *xdp) in xdp_return_frag() 548 void xdp_return_buff(struct xdp_buff *xdp) in xdp_return_buff() 575 struct xdp_frame *xdp_convert_zc_to_xdp_frame(struct xdp_buff *xdp) in xdp_convert_zc_to_xdp_frame() 632 struct sk_buff *xdp_build_skb_from_buff(const struct xdp_buff *xdp) in xdp_build_skb_from_buff() 688 const struct xdp_buff *xdp, in xdp_copy_frags_from_zc() 738 struct sk_buff *xdp_build_skb_from_zc(struct xdp_buff *xdp) in xdp_build_skb_from_zc()
|
| /linux-6.15/drivers/net/ethernet/netronome/nfp/ |
| H A 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-6.15/include/linux/ |
| H A D | filter.h | 37 struct xdp_buff; 991 u32 xdp_master_redirect(struct xdp_buff *xdp); 1202 struct xdp_buff *xdp, const struct bpf_prog *prog); 1204 struct xdp_buff *xdp, 1207 struct xdp_buff *xdp, 1770 int __bpf_xdp_load_bytes(struct xdp_buff *xdp, u32 offset, void *buf, u32 len); 1772 void *bpf_xdp_pointer(struct xdp_buff *xdp, u32 offset, u32 len); 1773 void bpf_xdp_copy_buf(struct xdp_buff *xdp, unsigned long off, 1788 static inline int __bpf_xdp_load_bytes(struct xdp_buff *xdp, u32 offset, in __bpf_xdp_load_bytes() 1794 static inline int __bpf_xdp_store_bytes(struct xdp_buff *xdp, u32 offset, in __bpf_xdp_store_bytes() [all …]
|
| /linux-6.15/drivers/net/vmxnet3/ |
| H A D | vmxnet3_xdp.c | 261 vmxnet3_run_xdp(struct vmxnet3_rx_queue *rq, struct xdp_buff *xdp, in vmxnet3_run_xdp() 314 const struct xdp_buff *xdp) in vmxnet3_build_skb() 341 struct xdp_buff xdp; in vmxnet3_process_xdp_small() 387 struct xdp_buff xdp; in vmxnet3_process_xdp()
|
| /linux-6.15/net/xdp/ |
| H A D | xsk_buff_pool.c | 556 struct xdp_buff *xp_alloc(struct xsk_buff_pool *pool) in xp_alloc() 582 static u32 xp_alloc_new_from_fq(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 max) in xp_alloc_new_from_fq() 618 static u32 xp_alloc_reused(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 nb_entries) in xp_alloc_reused() 638 static u32 xp_alloc_slow(struct xsk_buff_pool *pool, struct xdp_buff **xdp, in xp_alloc_slow() 644 struct xdp_buff *buff; in xp_alloc_slow() 656 u32 xp_alloc_batch(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 max) in xp_alloc_batch()
|
| /linux-6.15/drivers/net/ethernet/engleder/ |
| H A D | tsnep.h | 109 struct xdp_buff *xdp; 132 struct xdp_buff **xdp_batch;
|