Lines Matching defs:new_prog
10403 struct bpf_xdp_link *link, struct bpf_prog *new_prog,
10417 if (link && (new_prog || old_prog))
10467 /* put effective new program into new_prog */
10469 new_prog = link->link.prog;
10471 if (new_prog) {
10484 if (!offload && bpf_prog_is_offloaded(new_prog->aux)) {
10488 if (bpf_prog_is_dev_bound(new_prog->aux) && !bpf_offload_dev_match(new_prog, dev)) {
10492 if (bpf_prog_is_dev_bound(new_prog->aux) && mode == XDP_MODE_SKB) {
10496 if (new_prog->expected_attach_type == BPF_XDP_DEVMAP) {
10500 if (new_prog->expected_attach_type == BPF_XDP_CPUMAP) {
10507 if (new_prog != cur_prog) {
10514 err = dev_xdp_install(dev, mode, bpf_op, extack, flags, new_prog);
10522 dev_xdp_set_prog(dev, mode, new_prog);
10616 static int bpf_xdp_link_update(struct bpf_link *link, struct bpf_prog *new_prog,
10637 if (old_prog->type != new_prog->type ||
10638 old_prog->expected_attach_type != new_prog->expected_attach_type) {
10643 if (old_prog == new_prog) {
10645 bpf_prog_put(new_prog);
10653 xdp_link->flags, new_prog);
10658 old_prog = xchg(&link->prog, new_prog);
10747 struct bpf_prog *new_prog = NULL, *old_prog = NULL;
10753 new_prog = bpf_prog_get_type_dev(fd, BPF_PROG_TYPE_XDP,
10755 if (IS_ERR(new_prog))
10756 return PTR_ERR(new_prog);
10769 err = dev_xdp_attach(dev, extack, NULL, new_prog, old_prog, flags);
10772 if (err && new_prog)
10773 bpf_prog_put(new_prog);