| /linux/drivers/net/ethernet/intel/ice/ |
| H A D | ice_lag.c | 37 static void ice_lag_set_primary(struct ice_lag *lag) in ice_lag_set_primary() argument 39 struct ice_pf *pf = lag->pf; in ice_lag_set_primary() 44 if (lag->role != ICE_LAG_UNSET && lag->role != ICE_LAG_BACKUP) { in ice_lag_set_primary() 46 netdev_name(lag->netdev)); in ice_lag_set_primary() 50 lag->role = ICE_LAG_PRIMARY; in ice_lag_set_primary() 57 static void ice_lag_set_bkup(struct ice_lag *lag) in ice_lag_set_bkup() argument 59 struct ice_pf *pf = lag->pf; in ice_lag_set_bkup() 64 if (lag->role != ICE_LAG_UNSET && lag->role != ICE_LAG_PRIMARY) { in ice_lag_set_bkup() 66 netdev_name(lag->netdev)); in ice_lag_set_bkup() 70 lag->role = ICE_LAG_BACKUP; in ice_lag_set_bkup() [all …]
|
| H A D | ice_dcb_nl.c | 73 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setets() 178 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setdcbx() 274 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setpfc() 341 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_set_pfc_cfg() 402 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setstate() 479 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_set_pg_tc_cfg_tx() 538 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_set_pg_bwg_cfg_tx() 763 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_setapp() 879 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_delapp() 985 if (pf->lag && pf->lag->bonded) { in ice_dcbnl_cee_set_all()
|
| /linux/drivers/net/ethernet/netronome/nfp/flower/ |
| H A D | lag_conf.c | 86 static unsigned int nfp_fl_get_next_pkt_number(struct nfp_fl_lag *lag) in nfp_fl_get_next_pkt_number() argument 88 lag->pkt_num++; in nfp_fl_get_next_pkt_number() 89 lag->pkt_num &= NFP_FL_LAG_PKT_NUMBER_MASK; in nfp_fl_get_next_pkt_number() 91 return lag->pkt_num; in nfp_fl_get_next_pkt_number() 94 static void nfp_fl_increment_version(struct nfp_fl_lag *lag) in nfp_fl_increment_version() argument 97 lag->batch_ver += 2; in nfp_fl_increment_version() 98 lag->batch_ver &= NFP_FL_LAG_VERSION_MASK; in nfp_fl_increment_version() 101 if (!lag->batch_ver) in nfp_fl_increment_version() 102 lag->batch_ver += 2; in nfp_fl_increment_version() 106 nfp_fl_lag_group_create(struct nfp_fl_lag *lag, struct net_device *master) in nfp_fl_lag_group_create() argument [all …]
|
| H A D | main.h | 155 struct nfp_tun_neigh_lag lag; member 171 struct nfp_tun_neigh_lag lag; member 655 void nfp_flower_lag_init(struct nfp_fl_lag *lag); 656 void nfp_flower_lag_cleanup(struct nfp_fl_lag *lag); 657 int nfp_flower_lag_reset(struct nfp_fl_lag *lag); 670 struct nfp_tun_neigh_lag *lag);
|
| H A D | tunnel_conf.c | 494 struct nfp_tun_neigh_lag *lag; in nfp_tun_write_neigh() local 515 lag = &payload->lag; in nfp_tun_write_neigh() 526 lag = &payload->lag; in nfp_tun_write_neigh() 536 memcpy(lag, &lag_info, sizeof(struct nfp_tun_neigh_lag)); in nfp_tun_write_neigh()
|
| /linux/drivers/net/ethernet/marvell/prestera/ |
| H A D | prestera_main.c | 618 port->lag = NULL; in prestera_port_create() 878 struct prestera_lag *lag; in prestera_lag_by_dev() local 882 lag = &sw->lags[id]; in prestera_lag_by_dev() 883 if (lag->dev == dev) in prestera_lag_by_dev() 884 return lag; in prestera_lag_by_dev() 893 struct prestera_lag *lag; in prestera_lag_id() local 898 lag = prestera_lag_by_id(sw, id); in prestera_lag_id() 899 if (lag->member_count) { in prestera_lag_id() 900 if (lag->dev == lag_dev) { in prestera_lag_id() 917 struct prestera_lag *lag = NULL; in prestera_lag_create() local [all …]
|
| /linux/drivers/net/ethernet/microchip/lan966x/ |
| H A D | lan966x_lag.c | 10 int p, lag, i; in lan966x_lag_set_aggr_pgids() local 39 for (lag = 0; lag < lan966x->num_phys_ports; ++lag) { in lan966x_lag_set_aggr_pgids() 40 struct lan966x_port *port = lan966x->ports[lag]; in lan966x_lag_set_aggr_pgids() 46 if (!port || !port->bond || (visited & BIT(lag))) in lan966x_lag_set_aggr_pgids() 81 for (p = lag; p < lan966x->num_phys_ports; p++) { in lan966x_lag_set_aggr_pgids() 267 struct netdev_lag_lower_state_info *lag = info->lower_state_info; in lan966x_lag_port_changelowerstate() local 275 is_active = lag->link_up && lag->tx_enabled; in lan966x_lag_port_changelowerstate() 333 bool lan966x_lag_first_port(struct net_device *lag, struct net_device *dev) in lan966x_lag_first_port() argument 339 if (port->bond != lag) in lan966x_lag_first_port() 342 bond_mask = lan966x_lag_get_mask(lan966x, lag); in lan966x_lag_first_port()
|
| H A D | lan966x_mac.c | 25 bool lag; member 217 mac_entry->lag = port->bond ? true : false; in lan966x_mac_alloc_entry() 346 mac_entry->lag) { in lan966x_mac_lag_replace_port_entry() 369 mac_entry->lag) { in lan966x_mac_lag_remove_port_entry()
|
| /linux/Documentation/scheduler/ |
| H A D | sched-eevdf.rst | 15 time to each task, creating a "lag" value that can be used to determine 17 with a positive lag is owed CPU time, while a negative lag means the task 18 has exceeded its portion. EEVDF picks tasks with lag greater or equal to 24 There are ongoing discussions on how to manage lag, especially for sleeping 27 by sleeping briefly to reset their negative lag: when a task sleeps, it 29 lag to decay over VRT. Hence, long-sleeping tasks eventually have their lag
|
| /linux/net/dsa/ |
| H A D | switch.c | 354 static int dsa_switch_do_lag_fdb_add(struct dsa_switch *ds, struct dsa_lag *lag, in dsa_switch_do_lag_fdb_add() argument 361 mutex_lock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_add() 363 a = dsa_mac_addr_find(&lag->fdbs, addr, vid, db); in dsa_switch_do_lag_fdb_add() 366 trace_dsa_lag_fdb_add_bump(lag->dev, addr, vid, &db, in dsa_switch_do_lag_fdb_add() 377 err = ds->ops->lag_fdb_add(ds, *lag, addr, vid, db); in dsa_switch_do_lag_fdb_add() 378 trace_dsa_lag_fdb_add_hw(lag->dev, addr, vid, &db, err); in dsa_switch_do_lag_fdb_add() 388 list_add_tail(&a->list, &lag->fdbs); in dsa_switch_do_lag_fdb_add() 391 mutex_unlock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_add() 396 static int dsa_switch_do_lag_fdb_del(struct dsa_switch *ds, struct dsa_lag *lag, in dsa_switch_do_lag_fdb_del() argument 403 mutex_lock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_del() [all …]
|
| H A D | port.c | 589 if (!dp->lag) in dsa_port_lag_change() 611 struct dsa_lag *lag; in dsa_port_lag_create() local 613 lag = dsa_tree_lag_find(ds->dst, lag_dev); in dsa_port_lag_create() 614 if (lag) { in dsa_port_lag_create() 615 refcount_inc(&lag->refcount); in dsa_port_lag_create() 616 dp->lag = lag; in dsa_port_lag_create() 620 lag = kzalloc_obj(*lag); in dsa_port_lag_create() 621 if (!lag) in dsa_port_lag_create() 624 refcount_set(&lag->refcount, 1); in dsa_port_lag_create() 625 mutex_init(&lag->fdb_lock); in dsa_port_lag_create() [all …]
|
| H A D | tag_dsa.c | 261 struct dsa_lag *lag; in dsa_rcv_ll() local 267 lag = dsa_lag_by_id(cpu_dp->dst, source_port + 1); in dsa_rcv_ll() 268 skb->dev = lag ? lag->dev : NULL; in dsa_rcv_ll()
|
| H A D | trace.c | 15 sprintf(buf, "lag %s id %d", db->lag.dev->name, db->lag.id); in dsa_db_print()
|
| H A D | dsa.h | 20 void dsa_lag_map(struct dsa_switch_tree *dst, struct dsa_lag *lag); 21 void dsa_lag_unmap(struct dsa_switch_tree *dst, struct dsa_lag *lag);
|
| H A D | switch.h | 63 struct dsa_lag *lag; member 79 struct dsa_lag lag; member
|
| H A D | dsa.c | 64 void dsa_lag_map(struct dsa_switch_tree *dst, struct dsa_lag *lag) in dsa_lag_map() argument 70 dst->lags[id - 1] = lag; in dsa_lag_map() 71 lag->id = id; in dsa_lag_map() 92 void dsa_lag_unmap(struct dsa_switch_tree *dst, struct dsa_lag *lag) in dsa_lag_unmap() argument 97 if (dsa_lag_by_id(dst, id) == lag) { in dsa_lag_unmap() 99 lag->id = 0; in dsa_lag_unmap() 112 return dp->lag; in dsa_tree_lag_find() 1722 return a->lag.dev == b->lag.dev; in dsa_db_equal()
|
| /linux/include/net/ |
| H A D | dsa.h | 200 struct dsa_lag *lag = dsa_lag_by_id(dst, id); in dsa_lag_id() local 202 if (lag->dev == lag_dev) in dsa_lag_id() 203 return lag->id; in dsa_lag_id() 302 struct dsa_lag *lag; member 360 struct dsa_lag lag; member 728 return dp->lag ? dp->lag->id : 0; in dsa_port_lag_id_get() 733 return dp->lag ? dp->lag->dev : NULL; in dsa_port_lag_dev_get() 737 const struct dsa_lag *lag) in dsa_port_offloads_lag() argument 739 return dsa_port_lag_dev_get(dp) == lag->dev; in dsa_port_offloads_lag() 756 if (dp->lag) in dsa_port_to_bridge_port() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlxsw/ |
| H A D | pci_hw.h | 148 MLXSW_ITEM32(pci, cqe0, lag, 0x00, 23, 1); 149 MLXSW_ITEM32(pci, cqe12, lag, 0x00, 24, 1); 150 mlxsw_pci_cqe_item_helpers(lag, 0, 12, 12);
|
| H A D | spectrum.c | 4110 struct mlxsw_sp_lag *lag; in mlxsw_sp_lag_create() local 4131 lag = &mlxsw_sp->lags[lag_id]; in mlxsw_sp_lag_create() 4132 lag->lag_id = lag_id; in mlxsw_sp_lag_create() 4133 lag->dev = lag_dev; in mlxsw_sp_lag_create() 4134 refcount_set(&lag->ref_count, 1); in mlxsw_sp_lag_create() 4136 return lag; in mlxsw_sp_lag_create() 4140 mlxsw_sp_lag_destroy(struct mlxsw_sp *mlxsw_sp, struct mlxsw_sp_lag *lag) in mlxsw_sp_lag_destroy() argument 4144 lag->dev = NULL; in mlxsw_sp_lag_destroy() 4146 mlxsw_reg_sldr_lag_destroy_pack(sldr_pl, lag->lag_id); in mlxsw_sp_lag_destroy() 4214 struct mlxsw_sp_lag *lag; in mlxsw_sp_lag_get() local [all …]
|
| H A D | core.c | 86 } lag; member 2150 alloc_size = sizeof(*mlxsw_core->lag.mapping) * max_lag * in __mlxsw_core_bus_device_register() 2152 mlxsw_core->lag.mapping = kzalloc(alloc_size, GFP_KERNEL); in __mlxsw_core_bus_device_register() 2153 if (!mlxsw_core->lag.mapping) { in __mlxsw_core_bus_device_register() 2227 kfree(mlxsw_core->lag.mapping); in __mlxsw_core_bus_device_register() 2300 kfree(mlxsw_core->lag.mapping); in mlxsw_core_bus_device_unregister() 3010 mlxsw_core->lag.mapping[index] = local_port; in mlxsw_core_lag_mapping_set() 3020 return mlxsw_core->lag.mapping[index]; in mlxsw_core_lag_mapping_get() 3033 if (mlxsw_core->lag.mapping[index] == local_port) in mlxsw_core_lag_mapping_clear() 3034 mlxsw_core->lag.mapping[index] = 0; in mlxsw_core_lag_mapping_clear()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/lag/ |
| H A D | mpesw.c | 141 struct mlx5_lag *ldev = mpesww->lag; in mlx5_mpesw_work() 181 work->lag = ldev; in mlx5_lag_mpesw_queue_work() 253 struct mlx5_lag *ldev = dev->priv.lag; in mlx5_lag_mpesw_port_change_event()
|
| H A D | mpesw.h | 22 struct mlx5_lag *lag; member
|
| /linux/drivers/net/dsa/ocelot/ |
| H A D | felix.c | 50 int lag; in felix_cpu_port_for_conduit() local 54 lag = ocelot_bond_get_id(ocelot, conduit); in felix_cpu_port_for_conduit() 57 return lag; in felix_cpu_port_for_conduit() 914 static int felix_lag_fdb_add(struct dsa_switch *ds, struct dsa_lag lag, in felix_lag_fdb_add() argument 924 return ocelot_lag_fdb_add(ocelot, lag.dev, addr, vid, bridge_dev); in felix_lag_fdb_add() 927 static int felix_lag_fdb_del(struct dsa_switch *ds, struct dsa_lag lag, in felix_lag_fdb_del() argument 937 return ocelot_lag_fdb_del(ocelot, lag.dev, addr, vid, bridge_dev); in felix_lag_fdb_del() 1030 struct dsa_lag lag, in felix_lag_join() argument 1037 err = ocelot_port_lag_join(ocelot, port, lag.dev, info, extack); in felix_lag_join() 1045 return felix_port_change_conduit(ds, port, lag.dev, extack); in felix_lag_join() [all …]
|
| /linux/drivers/net/ethernet/mscc/ |
| H A D | ocelot.c | 2281 int i, port, lag; in ocelot_set_aggr_pgids() local 2309 for (lag = 0; lag < ocelot->num_phys_ports; lag++) { in ocelot_set_aggr_pgids() 2310 struct ocelot_port *ocelot_port = ocelot->ports[lag]; in ocelot_set_aggr_pgids() 2316 if (!ocelot_port || !ocelot_port->bond || (visited & BIT(lag))) in ocelot_set_aggr_pgids() 2349 for (port = lag; port < ocelot->num_phys_ports; port++) { in ocelot_set_aggr_pgids() 2379 int lag = ocelot_bond_get_id(ocelot, bond); in ocelot_setup_logical_port_ids() local 2382 ANA_PORT_PORT_CFG_PORTID_VAL(lag), in ocelot_setup_logical_port_ids() 2467 int lag) in ocelot_migrate_lag_fdbs() argument 2485 err = ocelot_mact_learn(ocelot, lag, fdb->addr, fdb->vid, in ocelot_migrate_lag_fdbs() 2564 int lag, err; in ocelot_lag_fdb_add() local [all …]
|
| /linux/drivers/net/dsa/mv88e6xxx/ |
| H A D | chip.c | 1770 if (dp && dp->lag) { in mv88e6xxx_pvt_map() 1815 if (dsa_to_port(chip->ds, port)->lag) in mv88e6xxx_port_fast_age_fid() 6848 struct dsa_lag lag, in mv88e6xxx_lag_can_offload() argument 6861 if (!lag.id) in mv88e6xxx_lag_can_offload() 6864 dsa_lag_foreach_port(dp, ds->dst, &lag) in mv88e6xxx_lag_can_offload() 6890 static int mv88e6xxx_lag_sync_map(struct dsa_switch *ds, struct dsa_lag lag) in mv88e6xxx_lag_sync_map() argument 6898 id = lag.id - 1; in mv88e6xxx_lag_sync_map() 6904 dsa_lag_foreach_port(dp, ds->dst, &lag) in mv88e6xxx_lag_sync_map() 6950 struct dsa_lag *lag; in mv88e6xxx_lag_sync_masks() local 6960 if (!dp->lag) in mv88e6xxx_lag_sync_masks() [all …]
|