Lines Matching refs:prog
97 prog_array->items[i].prog = pos->link.prog; in fill_prog_array()
175 if (old_prog && old_prog != link->prog) in bpf_netns_link_update_prog()
177 if (new_prog->type != link->prog->type) in bpf_netns_link_update_prog()
196 old_prog = xchg(&link->prog, new_prog); in bpf_netns_link_update_prog()
297 int netns_bpf_prog_attach(const union bpf_attr *attr, struct bpf_prog *prog) in netns_bpf_prog_attach() argument
323 ret = flow_dissector_bpf_prog_attach_check(net, prog); in netns_bpf_prog_attach()
333 if (attached == prog) { in netns_bpf_prog_attach()
342 WRITE_ONCE(run_array->items[0].prog, prog); in netns_bpf_prog_attach()
349 run_array->items[0].prog = prog; in netns_bpf_prog_attach()
353 net->bpf.progs[type] = prog; in netns_bpf_prog_attach()
386 struct bpf_prog *prog; in netns_bpf_prog_detach() local
396 prog = bpf_prog_get_type(attr->attach_bpf_fd, ptype); in netns_bpf_prog_detach()
397 if (IS_ERR(prog)) in netns_bpf_prog_detach()
398 return PTR_ERR(prog); in netns_bpf_prog_detach()
401 ret = __netns_bpf_prog_detach(current->nsproxy->net_ns, type, prog); in netns_bpf_prog_detach()
404 bpf_prog_put(prog); in netns_bpf_prog_detach()
444 err = flow_dissector_bpf_prog_attach_check(net, link->prog); in netns_bpf_link_attach()
477 int netns_bpf_link_create(const union bpf_attr *attr, struct bpf_prog *prog) in netns_bpf_link_create() argument
504 &bpf_netns_link_ops, prog); in netns_bpf_link_create()