| /linux/drivers/net/ethernet/microchip/lan966x/ |
| H A D | lan966x_xdp.c | 13 struct bpf_prog *old_prog; in lan966x_xdp_setup() local 24 old_prog = xchg(&port->xdp_prog, xdp->prog); in lan966x_xdp_setup() 32 xchg(&port->xdp_prog, old_prog); in lan966x_xdp_setup() 37 if (old_prog) in lan966x_xdp_setup() 38 bpf_prog_put(old_prog); in lan966x_xdp_setup()
|
| /linux/drivers/net/ethernet/engleder/ |
| H A D | tsnep_xdp.c | 12 struct bpf_prog *old_prog; in tsnep_xdp_setup_prog() local 14 old_prog = xchg(&adapter->xdp_prog, prog); in tsnep_xdp_setup_prog() 15 if (old_prog) in tsnep_xdp_setup_prog() 16 bpf_prog_put(old_prog); in tsnep_xdp_setup_prog()
|
| /linux/drivers/net/ethernet/intel/igc/ |
| H A D | igc_xdp.c | 15 struct bpf_prog *old_prog; in igc_xdp_set_prog() local 36 old_prog = xchg(&adapter->xdp_prog, prog); in igc_xdp_set_prog() 37 if (old_prog) in igc_xdp_set_prog() 38 bpf_prog_put(old_prog); in igc_xdp_set_prog()
|
| /linux/drivers/net/hyperv/ |
| H A D | netvsc_bpf.c | 128 struct bpf_prog *old_prog; in netvsc_xdp_set() local 131 old_prog = netvsc_xdp_get(nvdev); in netvsc_xdp_set() 133 if (!old_prog && !prog) in netvsc_xdp_set() 158 if (old_prog) in netvsc_xdp_set() 160 bpf_prog_put(old_prog); in netvsc_xdp_set()
|
| /linux/net/core/ |
| H A D | sock_reuseport.c | 686 struct bpf_prog *old_prog; in reuseport_attach_prog() local 705 old_prog = rcu_dereference_protected(reuse->prog, in reuseport_attach_prog() 710 sk_reuseport_prog_free(old_prog); in reuseport_attach_prog() 718 struct bpf_prog *old_prog; in reuseport_detach_prog() local 720 old_prog = NULL; in reuseport_detach_prog() 738 old_prog = rcu_replace_pointer(reuse->prog, old_prog, in reuseport_detach_prog() 742 if (!old_prog) in reuseport_detach_prog() 745 sk_reuseport_prog_free(old_prog); in reuseport_detach_prog()
|
| H A D | dev.c | 10378 struct bpf_prog *old_prog, u32 flags) in dev_xdp_attach() argument 10391 if (link && (new_prog || old_prog)) in dev_xdp_attach() 10410 if (old_prog && !(flags & XDP_FLAGS_REPLACE)) { in dev_xdp_attach() 10436 if ((flags & XDP_FLAGS_REPLACE) && cur_prog != old_prog) { in dev_xdp_attach() 10591 struct bpf_prog *old_prog) in bpf_xdp_link_update() argument 10606 if (old_prog && link->prog != old_prog) { in bpf_xdp_link_update() 10610 old_prog = link->prog; in bpf_xdp_link_update() 10611 if (old_prog->type != new_prog->type || in bpf_xdp_link_update() 10612 old_prog->expected_attach_type != new_prog->expected_attach_type) { in bpf_xdp_link_update() 10617 if (old_prog == new_prog) { in bpf_xdp_link_update() [all …]
|
| /linux/kernel/bpf/ |
| H A D | cgroup.c | 792 struct bpf_prog *old_prog = NULL; in __cgroup_bpf_attach() local 846 old_prog = pl->prog; in __cgroup_bpf_attach() 879 if (old_prog) { in __cgroup_bpf_attach() 881 bpf_trampoline_unlink_cgroup_shim(old_prog); in __cgroup_bpf_attach() 882 bpf_prog_put(old_prog); in __cgroup_bpf_attach() 894 if (old_prog) { in __cgroup_bpf_attach() 895 pl->prog = old_prog; in __cgroup_bpf_attach() 899 if (!old_prog) { in __cgroup_bpf_attach() 981 struct bpf_prog *old_prog; in __cgroup_bpf_replace() local 1005 old_prog = xchg(&link->link.prog, new_prog); in __cgroup_bpf_replace() [all …]
|
| H A D | net_namespace.c | 165 struct bpf_prog *old_prog) in bpf_netns_link_update_prog() argument 174 if (old_prog && old_prog != link->prog) in bpf_netns_link_update_prog() 195 old_prog = xchg(&link->prog, new_prog); in bpf_netns_link_update_prog() 196 bpf_prog_put(old_prog); in bpf_netns_link_update_prog()
|
| H A D | bpf_iter.c | 410 struct bpf_prog *old_prog) in bpf_iter_link_replace() argument 415 if (old_prog && link->prog != old_prog) { in bpf_iter_link_replace() 427 old_prog = xchg(&link->prog, new_prog); in bpf_iter_link_replace() 428 bpf_prog_put(old_prog); in bpf_iter_link_replace()
|
| H A D | syscall.c | 5838 struct bpf_prog *old_prog = NULL, *new_prog; in link_update() local 5866 old_prog = bpf_prog_get(attr->link_update.old_prog_fd); in link_update() 5867 if (IS_ERR(old_prog)) { in link_update() 5868 ret = PTR_ERR(old_prog); in link_update() 5869 old_prog = NULL; in link_update() 5878 ret = link->ops->update_prog(link, new_prog, old_prog); in link_update() 5883 if (old_prog) in link_update() 5884 bpf_prog_put(old_prog); in link_update()
|
| /linux/drivers/net/ethernet/netronome/nfp/bpf/ |
| H A D | offload.c | 575 bool old_prog, struct netlink_ext_ack *extack) in nfp_net_bpf_offload() argument 582 if (prog && old_prog) { in nfp_net_bpf_offload() 594 if (!old_prog && nn->dp.ctrl & NFP_NET_CFG_CTRL_BPF) in nfp_net_bpf_offload() 597 if (old_prog && !prog) in nfp_net_bpf_offload() 604 if (!old_prog) in nfp_net_bpf_offload()
|
| H A D | main.h | 583 bool old_prog, struct netlink_ext_ack *extack);
|
| /linux/drivers/net/ethernet/sfc/siena/ |
| H A D | efx.c | 630 struct bpf_prog *old_prog; in efx_xdp_setup_prog() local 645 old_prog = rtnl_dereference(efx->xdp_prog); in efx_xdp_setup_prog() 648 if (old_prog) in efx_xdp_setup_prog() 649 bpf_prog_put(old_prog); in efx_xdp_setup_prog()
|
| /linux/drivers/net/ |
| H A D | veth.c | 1569 struct bpf_prog *old_prog; in veth_xdp_set() local 1574 old_prog = priv->_xdp_prog; in veth_xdp_set() 1613 if (!old_prog) { in veth_xdp_set() 1621 if (old_prog) { in veth_xdp_set() 1634 bpf_prog_put(old_prog); in veth_xdp_set() 1637 if ((!!old_prog ^ !!prog) && peer) in veth_xdp_set() 1642 priv->_xdp_prog = old_prog; in veth_xdp_set()
|
| H A D | virtio_net.c | 6007 struct bpf_prog *old_prog; in virtnet_xdp_set() local 6045 old_prog = rtnl_dereference(vi->rq[0].xdp_prog); in virtnet_xdp_set() 6046 if (!prog && !old_prog) in virtnet_xdp_set() 6079 if (i == 0 && !old_prog) in virtnet_xdp_set() 6082 if (!old_prog) in virtnet_xdp_set() 6091 if (old_prog) in virtnet_xdp_set() 6092 bpf_prog_put(old_prog); in virtnet_xdp_set() 6103 rcu_assign_pointer(vi->rq[i].xdp_prog, old_prog); in virtnet_xdp_set() 6305 struct bpf_prog *old_prog; in _free_receive_bufs() local 6312 old_prog = rtnl_dereference(vi->rq[i].xdp_prog); in _free_receive_bufs() [all …]
|
| H A D | xen-netfront.c | 1629 struct bpf_prog *old_prog; in xennet_xdp_set() local 1653 old_prog = rtnl_dereference(np->queues[0].xdp_prog); in xennet_xdp_set() 1661 if (old_prog) in xennet_xdp_set() 1663 bpf_prog_put(old_prog); in xennet_xdp_set()
|
| /linux/drivers/net/ethernet/sfc/ |
| H A D | efx.c | 708 struct bpf_prog *old_prog; in efx_xdp_setup_prog() local 723 old_prog = rtnl_dereference(efx->xdp_prog); in efx_xdp_setup_prog() 726 if (old_prog) in efx_xdp_setup_prog() 727 bpf_prog_put(old_prog); in efx_xdp_setup_prog()
|
| /linux/drivers/net/ethernet/mellanox/mlx4/ |
| H A D | en_rx.c | 411 struct bpf_prog *old_prog; in mlx4_en_destroy_rx_ring() local 413 old_prog = rcu_dereference_protected( in mlx4_en_destroy_rx_ring() 416 if (old_prog) in mlx4_en_destroy_rx_ring() 417 bpf_prog_put(old_prog); in mlx4_en_destroy_rx_ring()
|
| H A D | en_netdev.c | 2721 struct bpf_prog *old_prog; in mlx4_xdp_set() local 2740 old_prog = rcu_dereference_protected( in mlx4_xdp_set() 2744 if (old_prog) in mlx4_xdp_set() 2745 bpf_prog_put(old_prog); in mlx4_xdp_set() 2789 old_prog = rcu_dereference_protected( in mlx4_xdp_set() 2793 if (old_prog) in mlx4_xdp_set() 2794 bpf_prog_put(old_prog); in mlx4_xdp_set()
|
| /linux/net/netfilter/ |
| H A D | nf_bpf_link.c | 166 struct bpf_prog *old_prog) in bpf_nf_link_update() argument
|
| /linux/drivers/net/ethernet/fungible/funeth/ |
| H A D | funeth_main.c | 1120 struct bpf_prog *old_prog, *prog = xdp->prog; in fun_xdp_setup() local 1156 old_prog = xchg(&fp->xdp_prog, prog); in fun_xdp_setup() 1157 if (old_prog) in fun_xdp_setup() 1158 bpf_prog_put(old_prog); in fun_xdp_setup()
|
| /linux/drivers/net/ethernet/socionext/ |
| H A D | netsec.c | 1800 struct bpf_prog *old_prog; in netsec_xdp_setup() local 1812 old_prog = xchg(&priv->xdp_prog, prog); in netsec_xdp_setup() 1813 if (old_prog) in netsec_xdp_setup() 1814 bpf_prog_put(old_prog); in netsec_xdp_setup()
|
| /linux/drivers/net/ethernet/cavium/thunder/ |
| H A D | nicvf_main.c | 1830 struct bpf_prog *old_prog; in nicvf_xdp_setup() local 1860 old_prog = xchg(&nic->xdp_prog, prog); in nicvf_xdp_setup() 1862 if (old_prog) in nicvf_xdp_setup() 1863 bpf_prog_put(old_prog); in nicvf_xdp_setup()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | en_main.c | 1133 struct bpf_prog *old_prog; in mlx5e_free_rq() local 1135 old_prog = rcu_dereference_protected(rq->xdp_prog, in mlx5e_free_rq() 1137 if (old_prog) in mlx5e_free_rq() 1138 bpf_prog_put(old_prog); in mlx5e_free_rq() 5195 struct bpf_prog *old_prog; in mlx5e_rq_replace_xdp_prog() local 5197 old_prog = rcu_replace_pointer(rq->xdp_prog, prog, in mlx5e_rq_replace_xdp_prog() 5199 if (old_prog) in mlx5e_rq_replace_xdp_prog() 5200 bpf_prog_put(old_prog); in mlx5e_rq_replace_xdp_prog() 5207 struct bpf_prog *old_prog; in mlx5e_xdp_set() local 5226 old_prog = priv->channels.params.xdp_prog; in mlx5e_xdp_set() [all …]
|
| /linux/drivers/net/ethernet/freescale/dpaa/ |
| H A D | dpaa_eth.c | 3029 struct bpf_prog *old_prog; in dpaa_setup_xdp() local 3044 old_prog = xchg(&priv->xdp_prog, bpf->prog); in dpaa_setup_xdp() 3045 if (old_prog) in dpaa_setup_xdp() 3046 bpf_prog_put(old_prog); in dpaa_setup_xdp()
|