Lines Matching refs:xdp_prog
48 struct bpf_prog __rcu *xdp_prog; member
199 rcv_xdp = rcu_access_pointer(rq->xdp_prog); in veth_xmit()
319 if (!rcu_access_pointer(rq->xdp_prog)) in veth_xdp_xmit()
357 if (unlikely(!rcu_access_pointer(rq->xdp_prog))) in veth_xdp_flush()
383 struct bpf_prog *xdp_prog; in veth_xdp_rcv_one() local
388 xdp_prog = rcu_dereference(rq->xdp_prog); in veth_xdp_rcv_one()
389 if (likely(xdp_prog)) { in veth_xdp_rcv_one()
399 act = bpf_prog_run_xdp(xdp_prog, &xdp); in veth_xdp_rcv_one()
411 trace_xdp_exception(rq->dev, xdp_prog, act); in veth_xdp_rcv_one()
422 if (xdp_do_redirect(rq->dev, &xdp, xdp_prog)) { in veth_xdp_rcv_one()
432 trace_xdp_exception(rq->dev, xdp_prog, act); in veth_xdp_rcv_one()
462 struct bpf_prog *xdp_prog; in veth_xdp_rcv_skb() local
469 xdp_prog = rcu_dereference(rq->xdp_prog); in veth_xdp_rcv_skb()
470 if (unlikely(!xdp_prog)) { in veth_xdp_rcv_skb()
525 act = bpf_prog_run_xdp(xdp_prog, &xdp); in veth_xdp_rcv_skb()
535 trace_xdp_exception(rq->dev, xdp_prog, act); in veth_xdp_rcv_skb()
545 if (xdp_do_redirect(rq->dev, &xdp, xdp_prog)) in veth_xdp_rcv_skb()
553 trace_xdp_exception(rq->dev, xdp_prog, act); in veth_xdp_rcv_skb()
721 rcu_assign_pointer(priv->rq[i].xdp_prog, priv->_xdp_prog); in veth_enable_xdp()
739 rcu_assign_pointer(priv->rq[i].xdp_prog, NULL); in veth_disable_xdp()
981 const struct bpf_prog *xdp_prog; in veth_xdp_query() local
983 xdp_prog = priv->_xdp_prog; in veth_xdp_query()
984 if (xdp_prog) in veth_xdp_query()
985 return xdp_prog->aux->id; in veth_xdp_query()