Searched refs:xdp (Results 1 - 25 of 206) sorted by last modified time

123456789

/linux-master/drivers/net/ethernet/intel/igc/
H A Digc_main.c450 if (!bi->xdp)
453 xsk_buff_free(bi->xdp);
454 bi->xdp = NULL;
1939 struct xdp_buff *xdp)
1941 unsigned int size = xdp->data_end - xdp->data;
1943 unsigned int metasize = xdp->data - xdp->data_meta;
1947 net_prefetch(xdp->data_meta);
1950 skb = napi_build_skb(xdp
1937 igc_build_skb(struct igc_ring *rx_ring, struct igc_rx_buffer *rx_buffer, struct xdp_buff *xdp) argument
1968 struct xdp_buff *xdp = &ctx->xdp; local
2463 igc_xdp_xmit_back(struct igc_adapter *adapter, struct xdp_buff *xdp) argument
2486 __igc_xdp_run_prog(struct igc_adapter *adapter, struct bpf_prog *prog, struct xdp_buff *xdp) argument
2516 igc_xdp_run_prog(struct igc_adapter *adapter, struct xdp_buff *xdp) argument
2706 igc_construct_skb_zc(struct igc_ring *ring, struct xdp_buff *xdp) argument
2731 igc_dispatch_skb_zc(struct igc_q_vector *q_vector, union igc_adv_rx_desc *desc, struct xdp_buff *xdp, ktime_t timestamp) argument
2755 xsk_buff_to_igc_ctx(struct xdp_buff *xdp) argument
[all...]
H A Digc.h18 #include <net/xdp.h>
549 struct xdp_buff *xdp; member in union:igc_rx_buffer::__anon37
555 struct xdp_buff xdp; member in struct:igc_xdp_buff
/linux-master/drivers/net/ethernet/intel/i40e/
H A Di40e_main.c3639 xdp_init_buff(&ring->xdp, i40e_rx_pg_size(ring) / 2, &ring->xdp_rxq);
4779 false /*is xdp*/, true);
4788 true /*is xdp*/, true);
13429 false /*is xdp*/, enable);
13457 true /*is xdp*/, enable);
13581 * @xdp: XDP command
13584 struct netdev_bpf *xdp)
13592 switch (xdp->command) {
13594 return i40e_xdp_setup(vsi, xdp->prog, xdp
13583 i40e_xdp(struct net_device *dev, struct netdev_bpf *xdp) argument
[all...]
H A Di40e_txrx.h7 #include <net/xdp.h>
347 struct xdp_buff xdp; member in struct:i40e_ring
H A Di40e_txrx.c8 #include <net/xdp.h>
2076 * @xdp: xdp_buff pointing to the data
2079 struct xdp_buff *xdp)
2081 u32 nr_frags = xdp_get_shared_info_from_buff(xdp)->nr_frags;
2085 xdp->flags = 0;
2096 i40e_rx_buffer_flip(rx_buffer, xdp->frame_sz);
2111 * @xdp: xdp_buff pointing to the data
2118 struct xdp_buff *xdp)
2120 unsigned int size = xdp->data_end - xdp
2078 i40e_process_rx_buffs(struct i40e_ring *rx_ring, int xdp_res, struct xdp_buff *xdp) argument
2117 i40e_construct_skb(struct i40e_ring *rx_ring, struct xdp_buff *xdp) argument
2214 i40e_build_skb(struct i40e_ring *rx_ring, struct xdp_buff *xdp) argument
2287 i40e_xmit_xdp_tx_ring(struct xdp_buff *xdp, struct i40e_ring *xdp_ring) argument
2303 i40e_run_xdp(struct i40e_ring *rx_ring, struct xdp_buff *xdp, struct bpf_prog *xdp_prog) argument
2422 i40e_add_xdp_frag(struct xdp_buff *xdp, u32 *nr_frags, struct i40e_rx_buffer *rx_buffer, u32 size) argument
2454 i40e_consume_xdp_buff(struct i40e_ring *rx_ring, struct xdp_buff *xdp, struct i40e_rx_buffer *rx_buffer) argument
2484 struct xdp_buff *xdp = &rx_ring->xdp; local
[all...]
/linux-master/drivers/net/ethernet/broadcom/bnxt/
H A Dbnxt.c1176 struct xdp_buff *xdp)
1218 if (xdp && page_is_pfmemalloc(page))
1219 xdp_buff_set_frag_pfmemalloc(xdp);
1267 struct xdp_buff *xdp, u16 idx,
1270 struct skb_shared_info *shinfo = xdp_get_shared_info_from_buff(xdp);
1273 if (!xdp_buff_has_frags(xdp))
1277 idx, agg_bufs, tpa, xdp);
1279 xdp_buff_set_frags_flag(xdp);
1979 struct xdp_buff xdp; local
2092 bnxt_xdp_buff_init(bp, rxr, cons, data_ptr, len, &xdp);
1172 __bnxt_rx_agg_pages(struct bnxt *bp, struct bnxt_cp_ring_info *cpr, struct skb_shared_info *shinfo, u16 idx, u32 agg_bufs, bool tpa, struct xdp_buff *xdp) argument
1265 bnxt_rx_agg_pages_xdp(struct bnxt *bp, struct bnxt_cp_ring_info *cpr, struct xdp_buff *xdp, u16 idx, u32 agg_bufs, bool tpa) argument
[all...]
/linux-master/net/core/
H A Ddev.c136 #include <trace/events/xdp.h>
4811 u32 bpf_prog_run_generic_xdp(struct sk_buff *skb, struct xdp_buff *xdp, argument
4834 xdp_init_buff(xdp, frame_sz, &rxqueue->xdp_rxq);
4835 xdp_prepare_buff(xdp, hard_start, skb_headroom(skb) - mac_len,
4839 xdp_buff_set_frags_flag(xdp);
4841 xdp_buff_clear_frags_flag(xdp);
4844 orig_data_end = xdp->data_end;
4845 orig_data = xdp->data;
4846 eth = (struct ethhdr *)xdp->data;
4851 act = bpf_prog_run_xdp(xdp_prog, xdp);
4936 netif_receive_generic_xdp(struct sk_buff **pskb, struct xdp_buff *xdp, struct bpf_prog *xdp_prog) argument
5019 struct xdp_buff xdp; local
5693 generic_xdp_install(struct net_device *dev, struct netdev_bpf *xdp) argument
9248 struct netdev_bpf xdp; local
[all...]
/linux-master/drivers/net/
H A Dtun.c65 #include <net/xdp.h>
1220 static int tun_xdp(struct net_device *dev, struct netdev_bpf *xdp) argument
1222 switch (xdp->command) {
1224 return tun_xdp_set(dev, xdp->prog, xdp->extack);
1294 struct xdp_frame *xdp = frames[i]; local
1298 void *frame = tun_xdp_to_ptr(xdp);
1315 static int tun_xdp_tx(struct net_device *dev, struct xdp_buff *xdp) argument
1317 struct xdp_frame *frame = xdp_convert_buff_to_frame(xdp);
1620 struct xdp_buff *xdp, u3
1619 tun_xdp_act(struct tun_struct *tun, struct bpf_prog *xdp_prog, struct xdp_buff *xdp, u32 act) argument
1705 struct xdp_buff xdp; local
2437 tun_xdp_one(struct tun_struct *tun, struct tun_file *tfile, struct xdp_buff *xdp, int *flush, struct tun_page *tpage) argument
2562 struct xdp_buff *xdp; local
[all...]
H A Dvirtio_net.c24 #include <net/xdp.h>
271 /* xdp_queue_pairs may be 0, when xdp is already loaded. So add this. */
940 /* when vi->curr_queue_pairs > nr_cpu_ids, the txq/sq is only used for xdp tx on
1037 static void put_xdp_frags(struct xdp_buff *xdp) argument
1043 if (xdp_buff_has_frags(xdp)) {
1044 shinfo = xdp_get_shared_info_from_buff(xdp);
1052 static int virtnet_xdp_handler(struct bpf_prog *xdp_prog, struct xdp_buff *xdp, argument
1061 act = bpf_prog_run_xdp(xdp_prog, xdp);
1070 xdpf = xdp_convert_buff_to_frame(xdp);
1072 netdev_dbg(dev, "convert buff to frame failed for xdp\
1220 struct xdp_buff xdp; local
1390 build_skb_from_xdp_buff(struct net_device *dev, struct virtnet_info *vi, struct xdp_buff *xdp, unsigned int xdp_frags_truesz) argument
1433 virtnet_build_xdp_buff_mrg(struct net_device *dev, struct virtnet_info *vi, struct receive_queue *rq, struct xdp_buff *xdp, void *buf, unsigned int len, unsigned int frame_sz, int *num_buf, unsigned int *xdp_frags_truesize, struct virtnet_rq_stats *stats) argument
1613 struct xdp_buff xdp; local
4108 virtnet_xdp(struct net_device *dev, struct netdev_bpf *xdp) argument
[all...]
H A Dxen-netfront.c970 struct xdp_buff *xdp, bool *need_xdp_flush)
977 xdp_init_buff(xdp, XEN_PAGE_SIZE - XDP_PACKET_HEADROOM,
979 xdp_prepare_buff(xdp, page_address(pdata), XDP_PACKET_HEADROOM,
982 act = bpf_prog_run_xdp(prog, xdp);
986 xdpf = xdp_convert_buff_to_frame(xdp);
995 err = xdp_do_redirect(queue->info->netdev, xdp, prog);
1028 struct xdp_buff xdp; local
1037 struct xen_netif_extra_info *xdp; local
1039 xdp = &extras[XEN_NETIF_EXTRA_TYPE_XDP - 1];
1040 rx->offset = xdp
968 xennet_run_xdp(struct netfront_queue *queue, struct page *pdata, struct xen_netif_rx_response *rx, struct bpf_prog *prog, struct xdp_buff *xdp, bool *need_xdp_flush) argument
1603 talk_to_netback_xdp(struct netfront_info *np, int xdp) argument
1664 xennet_xdp(struct net_device *dev, struct netdev_bpf *xdp) argument
[all...]
/linux-master/drivers/net/ethernet/stmicro/stmmac/
H A Dstmmac_main.c1598 if (!buf->xdp)
1601 xsk_buff_free(buf->xdp);
1602 buf->xdp = NULL;
1631 buf->xdp = xsk_buff_alloc(rx_q->xsk_pool);
1632 if (!buf->xdp)
1635 dma_addr = xsk_buff_xdp_get_dma(buf->xdp);
2073 netdev_err(priv->dev, "Failed to register xdp rxq info\n");
4996 struct xdp_buff *xdp)
4998 struct xdp_frame *xdpf = xdp_convert_buff_to_frame(xdp);
5025 struct xdp_buff *xdp)
4995 stmmac_xdp_xmit_back(struct stmmac_priv *priv, struct xdp_buff *xdp) argument
5023 __stmmac_xdp_run_prog(struct stmmac_priv *priv, struct bpf_prog *prog, struct xdp_buff *xdp) argument
5058 stmmac_xdp_run_prog(struct stmmac_priv *priv, struct xdp_buff *xdp) argument
5090 stmmac_construct_skb_zc(struct stmmac_channel *ch, struct xdp_buff *xdp) argument
5111 stmmac_dispatch_skb_zc(struct stmmac_priv *priv, u32 queue, struct dma_desc *p, struct dma_desc *np, struct xdp_buff *xdp) argument
5213 xsk_buff_to_stmmac_ctx(struct xdp_buff *xdp) argument
[all...]
/linux-master/drivers/net/ethernet/mellanox/mlx5/core/
H A Den_main.c56 #include "en/xdp.h"
2384 err = c->xdp ? mlx5e_open_cq(c->mdev, params->tx_cq_moderation, &cparam->xdp_sq.cqp,
2411 if (c->xdp) {
2425 if (c->xdp)
2441 if (c->xdp)
2465 if (c->xdp)
2474 if (c->xdp)
2570 c->xdp = !!params->xdp_prog;
4907 static int mlx5e_xdp(struct net_device *dev, struct netdev_bpf *xdp) argument
4909 switch (xdp
[all...]
/linux-master/net/xdp/
H A Dxsk.c29 #include <net/xdp.h>
157 static int xsk_rcv_zc(struct xdp_sock *xs, struct xdp_buff *xdp, u32 len) argument
159 struct xdp_buff_xsk *xskb = container_of(xdp, struct xdp_buff_xsk, xdp);
160 u32 frags = xdp_buff_has_frags(xdp);
179 len = pos->xdp.data_end - pos->xdp.data;
188 xsk_buff_free(xdp);
228 static int __xsk_rcv(struct xdp_sock *xs, struct xdp_buff *xdp, u32 len) argument
231 void *copy_from = xsk_copy_xdp_start(xdp), *copy_t
314 xsk_rcv_check(struct xdp_sock *xs, struct xdp_buff *xdp, u32 len) argument
341 xsk_generic_rcv(struct xdp_sock *xs, struct xdp_buff *xdp) argument
356 xsk_rcv(struct xdp_sock *xs, struct xdp_buff *xdp) argument
376 __xsk_map_redirect(struct xdp_sock *xs, struct xdp_buff *xdp) argument
[all...]
/linux-master/drivers/net/ethernet/amazon/ena/
H A Dena_netdev.c232 /* Don't init RX queues for xdp queues */
805 is_xdp ? "xdp frame" : "skb", ring->qid, req_id);
1171 static int ena_xdp_handle_buff(struct ena_ring *rx_ring, struct xdp_buff *xdp, u16 num_descs) argument
1179 "xdp: dropped unsupported multi-buffer packets\n");
1185 xdp_prepare_buff(xdp, page_address(rx_info->page),
1189 ret = ena_xdp_execute(rx_ring, xdp);
1191 /* The xdp program might expand the headers */
1193 rx_info->buf_offset = xdp->data - xdp->data_hard_start;
1194 rx_ring->ena_bufs[0].len = xdp
1219 struct xdp_buff xdp; local
[all...]
/linux-master/tools/testing/selftests/net/
H A Dudpgro_fwd.sh56 ip -n $NS_DST link set veth$DST xdp object ${BPF_FILE} section xdp 2>/dev/null
H A Dveth.sh251 ip -n $NS_DST link set dev veth$DST xdp object ${BPF_FILE} section xdp
252 chk_gro_flag "gro vs xdp while down - gro flag off" $DST off
255 ip -n $NS_DST link set dev veth$DST xdp off
256 chk_gro_flag " - after xdp off" $DST off
259 ip -n $NS_SRC link set dev veth$SRC xdp object ${BPF_FILE} section xdp
260 chk_gro_flag " - after peer xdp" $DST off
265 ip -n $NS_DST link set dev veth$DST xdp object ${BPF_FILE} section xdp
[all...]
/linux-master/kernel/bpf/
H A Dverifier.c30 #include <net/xdp.h>
9203 * This also applies to dynptr slices belonging to skb and xdp dynptrs,
H A Dcpumap.c26 #include <net/xdp.h>
33 #include <trace/events/xdp.h>
143 struct xdp_buff xdp; local
148 act = bpf_prog_run_generic_xdp(skb, &xdp, rcpu->prog);
154 err = xdp_do_generic_redirect(skb->dev, skb, &xdp,
183 struct xdp_buff xdp; local
187 xdp.rxq = &rxq;
198 xdp_convert_frame_to_buff(xdpf, &xdp);
200 act = bpf_prog_run_xdp(rcpu->prog, &xdp);
203 err = xdp_update_frame_from_buff(&xdp, xdp
[all...]
/linux-master/include/net/mana/
H A Dmana.h7 #include <net/xdp.h>
468 struct xdp_buff *xdp, void *buf_va, uint pkt_len);
/linux-master/drivers/net/ethernet/microsoft/mana/
H A Dmana_en.c16 #include <net/xdp.h>
1483 uint pkt_len, struct xdp_buff *xdp)
1490 if (xdp->data_hard_start) {
1491 skb_reserve(skb, xdp->data - xdp->data_hard_start);
1492 skb_put(skb, xdp->data_end - xdp->data);
1510 struct xdp_buff xdp = {}; local
1523 act = mana_run_xdp(ndev, rxq, &xdp, buf_va, pkt_len);
1531 skb = mana_build_skb(rxq, buf_va, pkt_len, &xdp);
1482 mana_build_skb(struct mana_rxq *rxq, void *buf_va, uint pkt_len, struct xdp_buff *xdp) argument
[all...]
/linux-master/drivers/net/ethernet/marvell/octeontx2/nic/
H A Dotx2_pf.c2622 /* Abort xmit if xdp queue is not */
2679 static int otx2_xdp(struct net_device *netdev, struct netdev_bpf *xdp) argument
2683 switch (xdp->command) {
2685 return otx2_xdp_setup(pf, xdp->prog);
/linux-master/drivers/net/ethernet/freescale/
H A Dfec_main.c81 int cpu, struct xdp_buff *xdp,
1594 struct xdp_buff *xdp, struct fec_enet_priv_rx_q *rxq, int cpu)
1596 unsigned int sync, len = xdp->data_end - xdp->data;
1602 act = bpf_prog_run_xdp(prog, xdp);
1607 sync = xdp->data_end - xdp->data;
1618 err = xdp_do_redirect(fep->netdev, xdp, prog);
1627 err = fec_enet_xdp_tx_xmit(fep, cpu, xdp, sync);
1647 page = virt_to_head_page(xdp
1593 fec_enet_run_xdp(struct fec_enet_private *fep, struct bpf_prog *prog, struct xdp_buff *xdp, struct fec_enet_priv_rx_q *rxq, int cpu) argument
1682 struct xdp_buff xdp; local
3910 fec_enet_xdp_tx_xmit(struct fec_enet_private *fep, int cpu, struct xdp_buff *xdp, u32 dma_sync_len) argument
[all...]
/linux-master/include/net/
H A Dxdp_sock.h122 int xsk_generic_rcv(struct xdp_sock *xs, struct xdp_buff *xdp);
123 int __xsk_map_redirect(struct xdp_sock *xs, struct xdp_buff *xdp);
199 static inline int xsk_generic_rcv(struct xdp_sock *xs, struct xdp_buff *xdp) argument
204 static inline int __xsk_map_redirect(struct xdp_sock *xs, struct xdp_buff *xdp) argument
/linux-master/include/linux/
H A Dnetdevice.h1314 * int (*ndo_xdp_xmit)(struct net_device *dev, int n, struct xdp_frame **xdp,
1322 * struct xdp_buff *xdp);
1579 struct xdp_frame **xdp,
1582 struct xdp_buff *xdp);
3888 u32 bpf_prog_run_generic_xdp(struct sk_buff *skb, struct xdp_buff *xdp,
/linux-master/drivers/net/vmxnet3/
H A Dvmxnet3_xdp.c100 /* This is the main xdp call used by kernel to set/unset eBPF program. */
251 vmxnet3_run_xdp(struct vmxnet3_rx_queue *rq, struct xdp_buff *xdp, argument
260 act = bpf_prog_run_xdp(prog, xdp);
261 page = virt_to_page(xdp->data_hard_start);
267 err = xdp_do_redirect(rq->adapter->netdev, xdp, prog);
276 xdpf = xdp_convert_buff_to_frame(xdp);
304 const struct xdp_buff *xdp)
316 skb_reserve(skb, xdp->data - xdp->data_hard_start);
317 skb_put(skb, xdp
303 vmxnet3_build_skb(struct vmxnet3_rx_queue *rq, struct page *page, const struct xdp_buff *xdp) argument
331 struct xdp_buff xdp; local
377 struct xdp_buff xdp; local
[all...]

Completed in 444 milliseconds

123456789