/linux-master/tools/testing/selftests/bpf/progs/ |
H A D | test_xdp_do_redirect.c | 28 SEC("xdp") 29 int xdp_redirect(struct xdp_md *xdp) argument 31 __u32 *metadata = (void *)(long)xdp->data_meta; 32 void *data_end = (void *)(long)xdp->data_end; 33 void *data = (void *)(long)xdp->data; 41 if (xdp->ingress_ifindex != (__u32)ifindex_in) 55 if (bpf_xdp_adjust_meta(xdp, sizeof(__u64))) 85 SEC("xdp") 86 int xdp_count_pkts(struct xdp_md *xdp) argument 88 void *data = (void *)(long)xdp [all...] |
H A D | xsk_xdp_progs.c | 19 SEC("xdp.frags") int xsk_def_prog(struct xdp_md *xdp) argument 24 SEC("xdp.frags") int xsk_xdp_drop(struct xdp_md *xdp) argument 33 SEC("xdp.frags") int xsk_xdp_populate_metadata(struct xdp_md *xdp) argument 40 err = bpf_xdp_adjust_meta(xdp, -(int)sizeof(struct xdp_info)); 44 data = (void *)(long)xdp->data; 45 data_meta = (void *)(long)xdp->data_meta; 56 SEC("xdp") in argument [all...] |
/linux-master/include/net/ |
H A D | xsk_buff_pool.h | 11 #include <net/xdp.h> 26 struct xdp_buff xdp; member in struct:xdp_buff_xsk 126 xskb->xdp.data_hard_start = pool->addrs + addr + pool->headroom; 144 u32 xp_alloc_batch(struct xsk_buff_pool *pool, struct xdp_buff **xdp, u32 max); 233 u64 offset = xskb->xdp.data - xskb->xdp.data_hard_start;
|
H A D | xdp.h | 2 /* include/net/xdp.h 74 XDP_FLAGS_HAS_FRAGS = BIT(0), /* non-linear xdp buff */ 75 XDP_FLAGS_FRAGS_PF_MEMALLOC = BIT(1), /* xdp paged memory is under 91 static __always_inline bool xdp_buff_has_frags(struct xdp_buff *xdp) argument 93 return !!(xdp->flags & XDP_FLAGS_HAS_FRAGS); 96 static __always_inline void xdp_buff_set_frags_flag(struct xdp_buff *xdp) argument 98 xdp->flags |= XDP_FLAGS_HAS_FRAGS; 101 static __always_inline void xdp_buff_clear_frags_flag(struct xdp_buff *xdp) argument 103 xdp->flags &= ~XDP_FLAGS_HAS_FRAGS; 106 static __always_inline bool xdp_buff_is_frag_pfmemalloc(struct xdp_buff *xdp) argument 111 xdp_buff_set_frag_pfmemalloc(struct xdp_buff *xdp) argument 117 xdp_init_buff(struct xdp_buff *xdp, u32 frame_sz, struct xdp_rxq_info *rxq) argument 125 xdp_prepare_buff(struct xdp_buff *xdp, unsigned char *hard_start, int headroom, int data_len, const bool meta_valid) argument 147 xdp_get_shared_info_from_buff(struct xdp_buff *xdp) argument 152 xdp_get_buff_len(struct xdp_buff *xdp) argument 252 xdp_convert_frame_to_buff(struct xdp_frame *frame, struct xdp_buff *xdp) argument 263 xdp_update_frame_from_buff(struct xdp_buff *xdp, struct xdp_frame *xdp_frame) argument 293 xdp_convert_buff_to_frame(struct xdp_buff *xdp) argument 359 xdp_set_data_meta_invalid(struct xdp_buff *xdp) argument 365 xdp_data_meta_unsupported(const struct xdp_buff *xdp) argument 507 bpf_prog_run_xdp(const struct bpf_prog *prog, struct xdp_buff *xdp) argument [all...] |
H A D | netdev_rx_queue.h | 8 #include <net/xdp.h>
|
/linux-master/drivers/net/ethernet/socionext/ |
H A D | netsec.c | 882 static u32 netsec_xdp_xmit_back(struct netsec_priv *priv, struct xdp_buff *xdp) argument 885 struct xdp_frame *xdpf = xdp_convert_buff_to_frame(xdp); 899 struct xdp_buff *xdp) 902 unsigned int sync, len = xdp->data_end - xdp->data; 908 act = bpf_prog_run_xdp(prog, xdp); 911 sync = xdp->data_end - xdp->data_hard_start - NETSEC_RXBUF_HEADROOM; 919 ret = netsec_xdp_xmit_back(priv, xdp); 921 page = virt_to_head_page(xdp 898 netsec_run_xdp(struct netsec_priv *priv, struct bpf_prog *prog, struct xdp_buff *xdp) argument 958 struct xdp_buff xdp; local 1819 netsec_xdp(struct net_device *ndev, struct netdev_bpf *xdp) argument [all...] |
/linux-master/drivers/net/ethernet/sfc/siena/ |
H A D | net_driver.h | 29 #include <net/xdp.h>
|
H A D | efx.c | 107 static int efx_xdp(struct net_device *dev, struct netdev_bpf *xdp); 655 static int efx_xdp(struct net_device *dev, struct netdev_bpf *xdp) argument 659 switch (xdp->command) { 661 return efx_xdp_setup_prog(efx, xdp->prog);
|
H A D | ethtool_common.c | 427 unsigned short xdp; local 429 for (xdp = 0; xdp < efx->xdp_tx_queue_count; xdp++) { 433 "tx-xdp-cpu-%hu.tx_packets", xdp); 549 int xdp; local 551 for (xdp = 0; xdp < efx->xdp_tx_queue_count; xdp [all...] |
/linux-master/drivers/net/ethernet/sfc/ |
H A D | net_driver.h | 29 #include <net/xdp.h>
|
H A D | ethtool_common.c | 428 unsigned short xdp; local 430 for (xdp = 0; xdp < efx->xdp_tx_queue_count; xdp++) { 434 "tx-xdp-cpu-%hu.tx_packets", xdp); 550 int xdp; local 552 for (xdp = 0; xdp < efx->xdp_tx_queue_count; xdp [all...] |
H A D | efx.c | 105 static int efx_xdp(struct net_device *dev, struct netdev_bpf *xdp); 656 static int efx_xdp(struct net_device *dev, struct netdev_bpf *xdp) argument 660 switch (xdp->command) { 662 return efx_xdp_setup_prog(efx, xdp->prog);
|
/linux-master/drivers/net/ethernet/netronome/nfp/ |
H A D | nfp_net.h | 24 #include <net/xdp.h> 293 * @xdp: XSK buffer pool handle (for AF_XDP) 297 struct xdp_buff *xdp; member in struct:nfp_net_xsk_rx_buf 559 * @xdp: Information about the driver XDP program 646 struct xdp_attachment_info xdp; member in struct:nfp_net
|
/linux-master/drivers/net/ethernet/netronome/nfp/nfdk/ |
H A D | dp.c | 1037 struct xdp_buff xdp; local 1042 xdp_init_buff(&xdp, PAGE_SIZE - NFP_NET_RX_BUF_HEADROOM, 1131 xdp_prepare_buff(&xdp, 1136 act = bpf_prog_run_xdp(xdp_prog, &xdp); 1138 pkt_len = xdp.data_end - xdp.data; 1139 pkt_off += xdp.data - orig_data; 1143 meta_len_xdp = xdp.data - xdp.data_meta;
|
/linux-master/drivers/net/ethernet/netronome/nfp/nfd3/ |
H A D | dp.c | 916 struct xdp_buff xdp; local 920 xdp_init_buff(&xdp, PAGE_SIZE - NFP_NET_RX_BUF_HEADROOM, 1012 xdp_prepare_buff(&xdp, 1017 act = bpf_prog_run_xdp(xdp_prog, &xdp); 1019 pkt_len = xdp.data_end - xdp.data; 1020 pkt_off += xdp.data - orig_data; 1024 meta_len_xdp = xdp.data - xdp.data_meta;
|
H A D | xsk.c | 35 txbuf->xdp = xrxbuf->xdp; 87 skb_put_data(skb, xrxbuf->xdp->data, pkt_len); 105 xrxbuf->xdp->data - xrxbuf->xdp->data_meta); 184 xrxbuf->xdp->data += meta_len; 185 xrxbuf->xdp->data_end = xrxbuf->xdp->data + pkt_len; 186 xdp_set_data_meta_invalid(xrxbuf->xdp); 187 xsk_buff_dma_sync_for_cpu(xrxbuf->xdp, r_ve [all...] |
/linux-master/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | en_rx.c | 56 #include "en/xdp.h" 499 struct xdp_buff *xdp, struct mlx5e_frag_page *frag_page, 507 if (!xdp_buff_has_frags(xdp)) { 513 xdp_buff_set_frags_flag(xdp); 520 xdp_buff_set_frag_pfmemalloc(xdp); 1665 xdp_init_buff(&mxbuf->xdp, frame_sz, &rq->xdp_rxq); 1666 xdp_prepare_buff(&mxbuf->xdp, va, headroom, len, true); 1703 rx_headroom = mxbuf.xdp.data - mxbuf.xdp.data_hard_start; 1704 metasize = mxbuf.xdp 498 mlx5e_add_skb_shared_info_frag(struct mlx5e_rq *rq, struct skb_shared_info *sinfo, struct xdp_buff *xdp, struct mlx5e_frag_page *frag_page, u32 frag_offset, u32 len) argument [all...] |
/linux-master/drivers/net/ethernet/mellanox/mlx5/core/en/ |
H A D | xdp.h | 49 struct xdp_buff xdp; member in struct:mlx5e_xdp_buff
|
/linux-master/drivers/net/ethernet/amazon/ena/ |
H A D | ena_xdp.h | 82 static inline int ena_xdp_execute(struct ena_ring *rx_ring, struct xdp_buff *xdp) argument 92 verdict = bpf_prog_run_xdp(xdp_prog, xdp); 96 xdpf = xdp_convert_buff_to_frame(xdp); 119 if (likely(!xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog))) {
|
/linux-master/drivers/net/netdevsim/ |
H A D | bpf.c | 194 struct xdp_attachment_info *xdp) 213 xdp_attachment_setup(xdp, bpf); 560 return nsim_xdp_set_prog(ns, bpf, &ns->xdp); 649 WARN_ON(ns->xdp.prog); 193 nsim_xdp_set_prog(struct netdevsim *ns, struct netdev_bpf *bpf, struct xdp_attachment_info *xdp) argument
|
/linux-master/drivers/net/ethernet/freescale/dpaa2/ |
H A D | dpaa2-eth.h | 15 #include <net/xdp.h> 161 } xdp; member in union:dpaa2_eth_swa::__anon1 497 struct dpaa2_eth_ch_xdp xdp; member in struct:dpaa2_eth_channel
|
/linux-master/tools/testing/selftests/bpf/ |
H A D | xsk_prereqs.sh | 59 ip link set $1 xdp off
|
/linux-master/kernel/bpf/ |
H A D | offload.c | 28 #include <net/xdp.h>
|
/linux-master/drivers/net/ethernet/intel/i40e/ |
H A D | i40e_txrx_common.h | 9 int i40e_xmit_xdp_tx_ring(struct xdp_buff *xdp, struct i40e_ring *xdp_ring);
|
/linux-master/drivers/net/ethernet/freescale/enetc/ |
H A D | enetc.h | 14 #include <net/xdp.h> 130 struct enetc_xdp_data xdp; member in struct:enetc_bdr
|