Lines Matching refs:xdp_link
10121 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_release() local
10128 if (xdp_link->dev) { in bpf_xdp_link_release()
10129 netdev_lock_ops(xdp_link->dev); in bpf_xdp_link_release()
10130 WARN_ON(dev_xdp_detach_link(xdp_link->dev, NULL, xdp_link)); in bpf_xdp_link_release()
10131 netdev_unlock_ops(xdp_link->dev); in bpf_xdp_link_release()
10132 xdp_link->dev = NULL; in bpf_xdp_link_release()
10146 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_dealloc() local
10148 kfree(xdp_link); in bpf_xdp_link_dealloc()
10154 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_show_fdinfo() local
10158 if (xdp_link->dev) in bpf_xdp_link_show_fdinfo()
10159 ifindex = xdp_link->dev->ifindex; in bpf_xdp_link_show_fdinfo()
10168 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_fill_link_info() local
10172 if (xdp_link->dev) in bpf_xdp_link_fill_link_info()
10173 ifindex = xdp_link->dev->ifindex; in bpf_xdp_link_fill_link_info()
10183 struct bpf_xdp_link *xdp_link = container_of(link, struct bpf_xdp_link, link); in bpf_xdp_link_update() local
10191 if (!xdp_link->dev) { in bpf_xdp_link_update()
10213 netdev_lock_ops(xdp_link->dev); in bpf_xdp_link_update()
10214 mode = dev_xdp_mode(xdp_link->dev, xdp_link->flags); in bpf_xdp_link_update()
10215 bpf_op = dev_xdp_bpf_op(xdp_link->dev, mode); in bpf_xdp_link_update()
10216 err = dev_xdp_install(xdp_link->dev, mode, bpf_op, NULL, in bpf_xdp_link_update()
10217 xdp_link->flags, new_prog); in bpf_xdp_link_update()
10218 netdev_unlock_ops(xdp_link->dev); in bpf_xdp_link_update()