Lines Matching refs:prog
96 prog_array->items[i].prog = pos->link.prog; in fill_prog_array()
174 if (old_prog && old_prog != link->prog) in bpf_netns_link_update_prog()
176 if (new_prog->type != link->prog->type) in bpf_netns_link_update_prog()
195 old_prog = xchg(&link->prog, new_prog); in bpf_netns_link_update_prog()
296 int netns_bpf_prog_attach(const union bpf_attr *attr, struct bpf_prog *prog) in netns_bpf_prog_attach() argument
322 ret = flow_dissector_bpf_prog_attach_check(net, prog); in netns_bpf_prog_attach()
332 if (attached == prog) { in netns_bpf_prog_attach()
341 WRITE_ONCE(run_array->items[0].prog, prog); in netns_bpf_prog_attach()
348 run_array->items[0].prog = prog; in netns_bpf_prog_attach()
352 net->bpf.progs[type] = prog; in netns_bpf_prog_attach()
385 struct bpf_prog *prog; in netns_bpf_prog_detach() local
395 prog = bpf_prog_get_type(attr->attach_bpf_fd, ptype); in netns_bpf_prog_detach()
396 if (IS_ERR(prog)) in netns_bpf_prog_detach()
397 return PTR_ERR(prog); in netns_bpf_prog_detach()
400 ret = __netns_bpf_prog_detach(current->nsproxy->net_ns, type, prog); in netns_bpf_prog_detach()
403 bpf_prog_put(prog); in netns_bpf_prog_detach()
443 err = flow_dissector_bpf_prog_attach_check(net, link->prog); in netns_bpf_link_attach()
476 int netns_bpf_link_create(const union bpf_attr *attr, struct bpf_prog *prog) in netns_bpf_link_create() argument
503 &bpf_netns_link_ops, prog, type); in netns_bpf_link_create()