/linux/drivers/net/ethernet/microsoft/mana/ |
H A D | mana_bpf.c | 151 struct bpf_prog *old_prog = mana_chn_xdp_get(apc); in mana_chn_setxdp() local 157 if (old_prog == prog) in mana_chn_setxdp() 166 if (old_prog) in mana_chn_setxdp() 168 bpf_prog_put(old_prog); in mana_chn_setxdp() 175 struct bpf_prog *old_prog; in mana_xdp_set() local 180 old_prog = mana_xdp_get(apc); in mana_xdp_set() 182 if (!old_prog && !prog) in mana_xdp_set() 198 if (old_prog) in mana_xdp_set() 199 bpf_prog_put(old_prog); in mana_xdp_set()
|
/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/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/stmicro/stmmac/ |
H A D | stmmac_xdp.c | 106 struct bpf_prog *old_prog; in stmmac_xdp_set_prog() local 127 old_prog = xchg(&priv->xdp_prog, prog); in stmmac_xdp_set_prog() 128 if (old_prog) in stmmac_xdp_set_prog() 129 bpf_prog_put(old_prog); in stmmac_xdp_set_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/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 | 10155 struct bpf_prog *old_prog, u32 flags) in dev_xdp_attach() argument 10168 if (link && (new_prog || old_prog)) in dev_xdp_attach() 10187 if (old_prog && !(flags & XDP_FLAGS_REPLACE)) { in dev_xdp_attach() 10213 if ((flags & XDP_FLAGS_REPLACE) && cur_prog != old_prog) { in dev_xdp_attach() 10368 struct bpf_prog *old_prog) in bpf_xdp_link_update() argument 10383 if (old_prog && link->prog != old_prog) { in bpf_xdp_link_update() 10387 old_prog = link->prog; in bpf_xdp_link_update() 10388 if (old_prog->type != new_prog->type || in bpf_xdp_link_update() 10389 old_prog->expected_attach_type != new_prog->expected_attach_type) { in bpf_xdp_link_update() 10394 if (old_prog == new_prog) { in bpf_xdp_link_update() [all …]
|
/linux/kernel/bpf/ |
H A D | cgroup.c | 793 struct bpf_prog *old_prog = NULL; in __cgroup_bpf_attach() local 847 old_prog = pl->prog; in __cgroup_bpf_attach() 880 if (old_prog) { in __cgroup_bpf_attach() 882 bpf_trampoline_unlink_cgroup_shim(old_prog); in __cgroup_bpf_attach() 883 bpf_prog_put(old_prog); in __cgroup_bpf_attach() 895 if (old_prog) { in __cgroup_bpf_attach() 896 pl->prog = old_prog; in __cgroup_bpf_attach() 900 if (!old_prog) { in __cgroup_bpf_attach() 982 struct bpf_prog *old_prog; in __cgroup_bpf_replace() local 1006 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 | offload.c | 271 int bpf_prog_dev_bound_inherit(struct bpf_prog *new_prog, struct bpf_prog *old_prog) in bpf_prog_dev_bound_inherit() argument 275 if (!bpf_prog_is_dev_bound(old_prog->aux)) in bpf_prog_dev_bound_inherit() 278 if (bpf_prog_is_offloaded(old_prog->aux)) in bpf_prog_dev_bound_inherit() 281 new_prog->aux->dev_bound = old_prog->aux->dev_bound; in bpf_prog_dev_bound_inherit() 282 new_prog->aux->offload_requested = old_prog->aux->offload_requested; in bpf_prog_dev_bound_inherit() 285 if (!old_prog->aux->offload) { in bpf_prog_dev_bound_inherit() 290 err = __bpf_prog_dev_bound_init(new_prog, old_prog->aux->offload->netdev); in bpf_prog_dev_bound_inherit()
|
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 | 5661 struct bpf_prog *old_prog = NULL, *new_prog; in link_update() local 5689 old_prog = bpf_prog_get(attr->link_update.old_prog_fd); in link_update() 5690 if (IS_ERR(old_prog)) { in link_update() 5691 ret = PTR_ERR(old_prog); in link_update() 5692 old_prog = NULL; in link_update() 5701 ret = link->ops->update_prog(link, new_prog, old_prog); in link_update() 5706 if (old_prog) in link_update() 5707 bpf_prog_put(old_prog); in link_update()
|
/linux/drivers/net/ethernet/netronome/nfp/bpf/ |
H A D | offload.c | 577 bool old_prog, struct netlink_ext_ack *extack) in nfp_net_bpf_offload() argument 584 if (prog && old_prog) { in nfp_net_bpf_offload() 596 if (!old_prog && nn->dp.ctrl & NFP_NET_CFG_CTRL_BPF) in nfp_net_bpf_offload() 599 if (old_prog && !prog) in nfp_net_bpf_offload() 606 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/ |
H A D | veth.c | 1563 struct bpf_prog *old_prog; in veth_xdp_set() local 1568 old_prog = priv->_xdp_prog; in veth_xdp_set() 1607 if (!old_prog) { in veth_xdp_set() 1615 if (old_prog) { in veth_xdp_set() 1628 bpf_prog_put(old_prog); in veth_xdp_set() 1631 if ((!!old_prog ^ !!prog) && peer) in veth_xdp_set() 1636 priv->_xdp_prog = old_prog; in veth_xdp_set()
|
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/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/ethernet/google/gve/ |
H A D | gve_main.c | 1537 struct bpf_prog *old_prog; in gve_set_xdp() local 1541 old_prog = READ_ONCE(priv->xdp_prog); in gve_set_xdp() 1544 if (old_prog) in gve_set_xdp() 1545 bpf_prog_put(old_prog); in gve_set_xdp() 1553 if (!old_prog && prog) in gve_set_xdp() 1555 else if (old_prog && !prog) in gve_set_xdp() 1562 if (old_prog) in gve_set_xdp() 1563 bpf_prog_put(old_prog); in gve_set_xdp()
|
/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/fungible/funeth/ |
H A D | funeth_main.c | 1133 struct bpf_prog *old_prog, *prog = xdp->prog; in fun_xdp_setup() local 1169 old_prog = xchg(&fp->xdp_prog, prog); in fun_xdp_setup() 1170 if (old_prog) in fun_xdp_setup() 1171 bpf_prog_put(old_prog); in fun_xdp_setup()
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | en_main.c | 1110 struct bpf_prog *old_prog; in mlx5e_free_rq() local 1112 old_prog = rcu_dereference_protected(rq->xdp_prog, in mlx5e_free_rq() 1114 if (old_prog) in mlx5e_free_rq() 1115 bpf_prog_put(old_prog); in mlx5e_free_rq() 5121 struct bpf_prog *old_prog; in mlx5e_rq_replace_xdp_prog() local 5123 old_prog = rcu_replace_pointer(rq->xdp_prog, prog, in mlx5e_rq_replace_xdp_prog() 5125 if (old_prog) in mlx5e_rq_replace_xdp_prog() 5126 bpf_prog_put(old_prog); in mlx5e_rq_replace_xdp_prog() 5133 struct bpf_prog *old_prog; in mlx5e_xdp_set() local 5152 old_prog = priv->channels.params.xdp_prog; in mlx5e_xdp_set() [all …]
|
/linux/drivers/net/ethernet/freescale/enetc/ |
H A D | enetc.c | 3160 struct bpf_prog *old_prog, *prog = ctx; in enetc_reconfigure_xdp_cb() local 3164 old_prog = xchg(&priv->xdp_prog, prog); in enetc_reconfigure_xdp_cb() 3169 xchg(&priv->xdp_prog, old_prog); in enetc_reconfigure_xdp_cb() 3173 if (old_prog) in enetc_reconfigure_xdp_cb() 3174 bpf_prog_put(old_prog); in enetc_reconfigure_xdp_cb()
|
/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()
|
/linux/include/linux/ |
H A D | bpf.h | 1775 struct bpf_prog *old_prog); 2212 struct bpf_prog *old_prog); 3224 int bpf_prog_dev_bound_inherit(struct bpf_prog *new_prog, struct bpf_prog *old_prog); 3281 struct bpf_prog *old_prog) in bpf_prog_dev_bound_inherit() argument
|