Lines Matching defs:prog
5527 struct bpf_prog *new = xdp->prog;
9046 return link->link.prog;
9047 return dev->xdp_state[mode].prog;
9056 if (dev->xdp_state[i].prog || dev->xdp_state[i].link)
9063 struct bpf_prog *prog = dev_xdp_prog(dev, mode);
9065 return prog ? prog->aux->id : 0;
9072 dev->xdp_state[mode].prog = NULL;
9076 struct bpf_prog *prog)
9079 dev->xdp_state[mode].prog = prog;
9084 u32 flags, struct bpf_prog *prog)
9093 xdp.prog = prog;
9095 /* Drivers assume refcnt is already incremented (i.e, prog pointer is
9098 * Given net_device also owns link/prog, we need to bump refcnt here
9101 if (prog)
9102 bpf_prog_inc(prog);
9105 if (prog)
9106 bpf_prog_put(prog);
9111 bpf_prog_change_xdp(dev_xdp_prog(dev, mode), prog);
9119 struct bpf_prog *prog;
9126 prog = dev_xdp_prog(dev, mode);
9127 if (!prog)
9141 bpf_prog_put(prog);
9159 /* either link or prog attachment, never both */
9192 /* can't replace attached prog with link */
9204 new_prog = link->link.prog;
9357 if (old_prog && link->prog != old_prog) {
9361 old_prog = link->prog;
9381 old_prog = xchg(&link->prog, new_prog);
9398 int bpf_xdp_link_attach(const union bpf_attr *attr, struct bpf_prog *prog)
9419 bpf_link_init(&link->link, BPF_LINK_TYPE_XDP, &bpf_xdp_link_lops, prog);