Lines Matching refs:xdp_prog
62 struct bpf_prog __rcu *xdp_prog; member
560 if (unlikely(!rcu_access_pointer(rcv_rq->xdp_prog))) in veth_xdp_flush()
590 struct bpf_prog *xdp_prog; in veth_xdp_rcv_one() local
593 xdp_prog = rcu_dereference(rq->xdp_prog); in veth_xdp_rcv_one()
594 if (likely(xdp_prog)) { in veth_xdp_rcv_one()
601 act = bpf_prog_run_xdp(xdp_prog, &xdp); in veth_xdp_rcv_one()
612 trace_xdp_exception(rq->dev, xdp_prog, act); in veth_xdp_rcv_one()
623 if (xdp_do_redirect(rq->dev, &xdp, xdp_prog)) { in veth_xdp_rcv_one()
632 bpf_warn_invalid_xdp_action(rq->dev, xdp_prog, act); in veth_xdp_rcv_one()
635 trace_xdp_exception(rq->dev, xdp_prog, act); in veth_xdp_rcv_one()
803 struct bpf_prog *xdp_prog; in veth_xdp_rcv_skb() local
811 xdp_prog = rcu_dereference(rq->xdp_prog); in veth_xdp_rcv_skb()
812 if (unlikely(!xdp_prog)) { in veth_xdp_rcv_skb()
824 act = bpf_prog_run_xdp(xdp_prog, &xdp); in veth_xdp_rcv_skb()
834 trace_xdp_exception(rq->dev, xdp_prog, act); in veth_xdp_rcv_skb()
845 if (xdp_do_redirect(rq->dev, &xdp, xdp_prog)) { in veth_xdp_rcv_skb()
853 bpf_warn_invalid_xdp_action(rq->dev, xdp_prog, act); in veth_xdp_rcv_skb()
856 trace_xdp_exception(rq->dev, xdp_prog, act); in veth_xdp_rcv_skb()
1149 rcu_assign_pointer(priv->rq[i].xdp_prog, priv->_xdp_prog); in veth_enable_xdp()
1162 rcu_assign_pointer(priv->rq[i].xdp_prog, NULL); in veth_disable_xdp()