Lines Matching refs:xdp_link
10557 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_release() local
10564 if (xdp_link->dev) { in bpf_xdp_link_release()
10565 netdev_lock_ops(xdp_link->dev); in bpf_xdp_link_release()
10566 WARN_ON(dev_xdp_detach_link(xdp_link->dev, NULL, xdp_link)); in bpf_xdp_link_release()
10567 netdev_unlock_ops(xdp_link->dev); in bpf_xdp_link_release()
10568 xdp_link->dev = NULL; in bpf_xdp_link_release()
10582 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_dealloc() local
10584 kfree(xdp_link); in bpf_xdp_link_dealloc()
10590 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_show_fdinfo() local
10594 if (xdp_link->dev) in bpf_xdp_link_show_fdinfo()
10595 ifindex = xdp_link->dev->ifindex; in bpf_xdp_link_show_fdinfo()
10604 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_fill_link_info() local
10608 if (xdp_link->dev) in bpf_xdp_link_fill_link_info()
10609 ifindex = xdp_link->dev->ifindex; in bpf_xdp_link_fill_link_info()
10619 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_update() local
10627 if (!xdp_link->dev) { in bpf_xdp_link_update()
10649 netdev_lock_ops(xdp_link->dev); in bpf_xdp_link_update()
10650 mode = dev_xdp_mode(xdp_link->dev, xdp_link->flags); in bpf_xdp_link_update()
10651 bpf_op = dev_xdp_bpf_op(xdp_link->dev, mode); in bpf_xdp_link_update()
10652 err = dev_xdp_install(xdp_link->dev, mode, bpf_op, NULL, in bpf_xdp_link_update()
10653 xdp_link->flags, new_prog); in bpf_xdp_link_update()
10654 netdev_unlock_ops(xdp_link->dev); in bpf_xdp_link_update()