/linux-master/drivers/net/ethernet/microchip/lan966x/ |
H A D | lan966x_xdp.c | 24 old_prog = xchg(&port->xdp_prog, xdp->prog); 32 xchg(&port->xdp_prog, old_prog); 77 struct bpf_prog *xdp_prog = port->xdp_prog; local 87 act = bpf_prog_run_xdp(xdp_prog, &xdp); 96 if (xdp_do_redirect(port->dev, &xdp, xdp_prog)) 101 bpf_warn_invalid_xdp_action(port->dev, xdp_prog, act); 104 trace_xdp_exception(port->dev, xdp_prog, act);
|
/linux-master/drivers/net/ethernet/intel/igc/ |
H A D | igc_xdp.h | 14 return !!adapter->xdp_prog;
|
/linux-master/drivers/net/ethernet/amazon/ena/ |
H A D | ena_xdp.h | 85 struct bpf_prog *xdp_prog; local 90 xdp_prog = READ_ONCE(rx_ring->xdp_bpf_prog); 92 verdict = bpf_prog_run_xdp(xdp_prog, xdp); 98 trace_xdp_exception(rx_ring->netdev, xdp_prog, verdict); 119 if (likely(!xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog))) { 124 trace_xdp_exception(rx_ring->netdev, xdp_prog, verdict); 129 trace_xdp_exception(rx_ring->netdev, xdp_prog, verdict); 142 bpf_warn_invalid_xdp_action(rx_ring->netdev, xdp_prog, verdict);
|
/linux-master/kernel/bpf/ |
H A D | devmap.c | 61 struct bpf_prog *xdp_prog; member in struct:xdp_dev_bulk_queue 68 struct bpf_prog *xdp_prog; member in struct:bpf_dtab_netdev 215 if (dev->xdp_prog) 216 bpf_prog_put(dev->xdp_prog); 231 if (dev->xdp_prog) 232 bpf_prog_put(dev->xdp_prog); 323 static int dev_map_bpf_prog_run(struct bpf_prog *xdp_prog, argument 339 act = bpf_prog_run_xdp(xdp_prog, &xdp); 349 bpf_warn_invalid_xdp_action(NULL, xdp_prog, act); 352 trace_xdp_exception(dev, xdp_prog, ac 453 bq_enqueue(struct net_device *dev, struct xdp_frame *xdpf, struct net_device *dev_rx, struct bpf_prog *xdp_prog) argument 478 __xdp_enqueue(struct net_device *dev, struct xdp_frame *xdpf, struct net_device *dev_rx, struct bpf_prog *xdp_prog) argument 676 dev_map_generic_redirect(struct bpf_dtab_netdev *dst, struct sk_buff *skb, struct bpf_prog *xdp_prog) argument 698 dev_map_redirect_clone(struct bpf_dtab_netdev *dst, struct sk_buff *skb, struct bpf_prog *xdp_prog) argument 718 dev_map_redirect_multi(struct net_device *dev, struct sk_buff *skb, struct bpf_prog *xdp_prog, struct bpf_map *map, bool exclude_ingress) argument [all...] |
/linux-master/drivers/net/ethernet/broadcom/bnxt/ |
H A D | bnxt_xdp.c | 177 struct bpf_prog *xdp_prog = READ_ONCE(rxr->xdp_prog); local 179 return !!xdp_prog; 228 struct bpf_prog *xdp_prog = READ_ONCE(rxr->xdp_prog); local 239 if (!xdp_prog) 249 act = bpf_prog_run_xdp(xdp_prog, xdp); 281 trace_xdp_exception(bp->dev, xdp_prog, act); 308 trace_xdp_exception(bp->dev, xdp_prog, act); 314 if (xdp_do_redirect(bp->dev, xdp, xdp_prog)) { 340 struct bpf_prog *xdp_prog = READ_ONCE(bp->xdp_prog); local [all...] |
/linux-master/drivers/net/ethernet/netronome/nfp/ |
H A D | nfp_net_xsk.h | 15 return dp->xdp_prog && dp->xsk_pools[qid];
|
/linux-master/drivers/net/ethernet/sfc/siena/ |
H A D | rx.c | 256 struct bpf_prog *xdp_prog; local 263 xdp_prog = rcu_dereference_bh(efx->xdp_prog); 264 if (!xdp_prog) 294 xdp_act = bpf_prog_run_xdp(xdp_prog, &xdp); 320 trace_xdp_exception(efx->net_dev, xdp_prog, xdp_act); 327 err = xdp_do_redirect(efx->net_dev, &xdp, xdp_prog); 334 trace_xdp_exception(efx->net_dev, xdp_prog, xdp_act); 341 bpf_warn_invalid_xdp_action(efx->net_dev, xdp_prog, xdp_act); 344 trace_xdp_exception(efx->net_dev, xdp_prog, xdp_ac [all...] |
/linux-master/drivers/net/ethernet/sfc/ |
H A D | rx.c | 256 struct bpf_prog *xdp_prog; local 263 xdp_prog = rcu_dereference_bh(efx->xdp_prog); 264 if (!xdp_prog) 294 xdp_act = bpf_prog_run_xdp(xdp_prog, &xdp); 320 trace_xdp_exception(efx->net_dev, xdp_prog, xdp_act); 327 err = xdp_do_redirect(efx->net_dev, &xdp, xdp_prog); 334 trace_xdp_exception(efx->net_dev, xdp_prog, xdp_act); 341 bpf_warn_invalid_xdp_action(efx->net_dev, xdp_prog, xdp_act); 344 trace_xdp_exception(efx->net_dev, xdp_prog, xdp_ac [all...] |
/linux-master/drivers/net/ethernet/freescale/dpaa2/ |
H A D | dpaa2-xsk.c | 38 struct bpf_prog *xdp_prog; local 44 xdp_prog = READ_ONCE(ch->xdp.prog); 45 if (!xdp_prog) 59 xdp_act = bpf_prog_run_xdp(xdp_prog, xdp_buff); 66 err = xdp_do_redirect(priv->net_dev, xdp_buff, xdp_prog); 85 bpf_warn_invalid_xdp_action(priv->net_dev, xdp_prog, xdp_act); 88 trace_xdp_exception(priv->net_dev, xdp_prog, xdp_act); 122 WARN_ON(priv->xdp_prog); 317 if (!priv->xdp_prog)
|
/linux-master/drivers/net/ethernet/stmicro/stmmac/ |
H A D | stmmac_xdp.c | 123 need_update = !!priv->xdp_prog != !!prog; 127 old_prog = xchg(&priv->xdp_prog, prog);
|
/linux-master/drivers/net/vmxnet3/ |
H A D | vmxnet3_xdp.c | 330 struct bpf_prog *xdp_prog; local 349 xdp_prog = rcu_dereference(rq->adapter->xdp_bpf_prog); 350 if (!xdp_prog) { 354 act = vmxnet3_run_xdp(rq, &xdp, xdp_prog); 375 struct bpf_prog *xdp_prog; local 393 xdp_prog = rcu_dereference(rq->adapter->xdp_bpf_prog); 394 if (!xdp_prog) { 398 act = vmxnet3_run_xdp(rq, &xdp, xdp_prog);
|
/linux-master/drivers/net/ethernet/engleder/ |
H A D | tsnep_xdp.c | 14 old_prog = xchg(&adapter->xdp_prog, prog);
|
/linux-master/drivers/net/ethernet/netronome/nfp/nfd3/ |
H A D | xsk.c | 121 struct bpf_prog *xdp_prog; local 125 xdp_prog = READ_ONCE(dp->xdp_prog); 219 act = bpf_prog_run_xdp(xdp_prog, xrxbuf->xdp); 237 if (xdp_do_redirect(dp->netdev, xrxbuf->xdp, xdp_prog)) { 245 bpf_warn_invalid_xdp_action(dp->netdev, xdp_prog, act); 248 trace_xdp_exception(dp->netdev, xdp_prog, act);
|
H A D | dp.c | 556 if (!dp->xdp_prog) { 571 nfp_net_free_frag(frag, dp->xdp_prog); 911 struct bpf_prog *xdp_prog; local 918 xdp_prog = READ_ONCE(dp->xdp_prog); 919 true_bufsz = xdp_prog ? PAGE_SIZE : dp->fl_bufsz; 1007 if (xdp_prog && !meta.portid) { 1017 act = bpf_prog_run_xdp(xdp_prog, &xdp); 1035 xdp_prog, act); 1038 bpf_warn_invalid_xdp_action(dp->netdev, xdp_prog, ac [all...] |
/linux-master/drivers/net/ethernet/intel/i40e/ |
H A D | i40e_xsk.c | 193 * @xdp_prog: XDP program to run 198 struct bpf_prog *xdp_prog) 204 act = bpf_prog_run_xdp(xdp_prog, xdp); 207 err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog); 230 bpf_warn_invalid_xdp_action(rx_ring->netdev, xdp_prog, act); 235 trace_xdp_exception(rx_ring->netdev, xdp_prog, act); 439 struct bpf_prog *xdp_prog; local 446 /* NB! xdp_prog will always be !NULL, due to the fact that 449 xdp_prog = READ_ONCE(rx_ring->xdp_prog); 197 i40e_run_xdp_zc(struct i40e_ring *rx_ring, struct xdp_buff *xdp, struct bpf_prog *xdp_prog) argument [all...] |
/linux-master/drivers/net/ethernet/intel/ixgbe/ |
H A D | ixgbe_xsk.c | 14 bool xdp_on = READ_ONCE(adapter->xdp_prog); 102 struct bpf_prog *xdp_prog; local 107 xdp_prog = READ_ONCE(rx_ring->xdp_prog); 108 act = bpf_prog_run_xdp(xdp_prog, xdp); 111 err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog); 141 bpf_warn_invalid_xdp_action(rx_ring->netdev, xdp_prog, act); 146 trace_xdp_exception(rx_ring->netdev, xdp_prog, act); 517 if (!READ_ONCE(adapter->xdp_prog))
|
/linux-master/drivers/net/ethernet/mellanox/mlx5/core/en/ |
H A D | xdp.h | 134 if (priv->channels.params.xdp_prog) 140 if (priv->channels.params.xdp_prog)
|
H A D | params.c | 228 if (params->xdp_prog) 270 no_head_tail_room = params->xdp_prog && mpwqe && !mlx5e_rx_is_linear_skb(mdev, params, xsk); 279 * Do not assume sz <= PAGE_SIZE if params->xdp_prog is set. 281 return params->xdp_prog && sz < PAGE_SIZE ? PAGE_SIZE : sz; 439 if (params->xdp_prog) 663 wqe_bulk_in_bytes = min_t(u32, MAX_WQE_BULK_BYTES(params->xdp_prog), 672 split_factor = DIV_ROUND_UP(MAX_WQE_BULK_BYTES(params->xdp_prog), 716 params->xdp_prog); 717 if (byte_count > max_mtu || params->xdp_prog) { 722 params->xdp_prog); [all...] |
/linux-master/drivers/net/ |
H A D | veth.c | 64 struct bpf_prog __rcu *xdp_prog; member in struct:veth_rq 585 if (unlikely(!rcu_access_pointer(rcv_rq->xdp_prog))) 615 struct bpf_prog *xdp_prog; local 618 xdp_prog = rcu_dereference(rq->xdp_prog); 619 if (likely(xdp_prog)) { 628 act = bpf_prog_run_xdp(xdp_prog, xdp); 639 trace_xdp_exception(rq->dev, xdp_prog, act); 650 if (xdp_do_redirect(rq->dev, xdp, xdp_prog)) { 659 bpf_warn_invalid_xdp_action(rq->dev, xdp_prog, ac 768 struct bpf_prog *xdp_prog; local [all...] |
/linux-master/drivers/net/ethernet/aquantia/atlantic/ |
H A D | aq_main.c | 137 prog = READ_ONCE(aq_nic->xdp_prog); 229 prog = READ_ONCE(aq_nic->xdp_prog); 231 aq_nic->xdp_prog && features & NETIF_F_LRO) { 466 need_update = !!aq_nic->xdp_prog != !!prog; 470 old_prog = xchg(&aq_nic->xdp_prog, prog);
|
/linux-master/drivers/net/ethernet/fungible/funeth/ |
H A D | funeth_rx.c | 144 struct bpf_prog *xdp_prog; local 155 xdp_prog = READ_ONCE(q->xdp_prog); 156 act = bpf_prog_run_xdp(xdp_prog, &xdp); 177 if (unlikely(xdp_do_redirect(q->netdev, &xdp, xdp_prog))) 183 bpf_warn_invalid_xdp_action(q->netdev, xdp_prog, act); 186 trace_xdp_exception(q->netdev, xdp_prog, act); 608 WRITE_ONCE(q->xdp_prog, prog); 724 q->xdp_prog = fp->xdp_prog; [all...] |
/linux-master/samples/bpf/ |
H A D | xdp_sample_user.h | 39 int sample_install_xdp(struct bpf_program *xdp_prog, int ifindex, bool generic,
|
/linux-master/drivers/net/ethernet/freescale/dpaa/ |
H A D | dpaa_eth.h | 179 struct bpf_prog *xdp_prog; member in struct:dpaa_priv
|
/linux-master/drivers/net/ethernet/intel/ice/ |
H A D | ice_xsk.c | 743 * @xdp_prog: XDP program to run 750 struct bpf_prog *xdp_prog, struct ice_tx_ring *xdp_ring) 755 act = bpf_prog_run_xdp(xdp_prog, xdp); 758 err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog); 780 bpf_warn_invalid_xdp_action(rx_ring->netdev, xdp_prog, act); 785 trace_xdp_exception(rx_ring->netdev, xdp_prog, act); 837 struct bpf_prog *xdp_prog; local 845 xdp_prog = READ_ONCE(rx_ring->xdp_prog); 894 xdp_res = ice_run_xdp_zc(rx_ring, first, xdp_prog, xdp_rin 749 ice_run_xdp_zc(struct ice_rx_ring *rx_ring, struct xdp_buff *xdp, struct bpf_prog *xdp_prog, struct ice_tx_ring *xdp_ring) argument [all...] |
/linux-master/drivers/net/ethernet/mellanox/mlx4/ |
H A D | en_rx.c | 439 ring->xdp_prog, 720 struct bpf_prog *xdp_prog; local 733 xdp_prog = rcu_dereference_bh(ring->xdp_prog); 819 if (xdp_prog) { 837 act = bpf_prog_run_xdp(xdp_prog, &mxbuf.xdp); 850 if (likely(!xdp_do_redirect(dev, &mxbuf.xdp, xdp_prog))) { 857 trace_xdp_exception(dev, xdp_prog, act); 866 trace_xdp_exception(dev, xdp_prog, act); 869 bpf_warn_invalid_xdp_action(dev, xdp_prog, ac [all...] |