Lines Matching full:lag
318 static int dsa_switch_do_lag_fdb_add(struct dsa_switch *ds, struct dsa_lag *lag, in dsa_switch_do_lag_fdb_add() argument
325 mutex_lock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_add()
327 a = dsa_mac_addr_find(&lag->fdbs, addr, vid, db); in dsa_switch_do_lag_fdb_add()
339 err = ds->ops->lag_fdb_add(ds, *lag, addr, vid, db); in dsa_switch_do_lag_fdb_add()
349 list_add_tail(&a->list, &lag->fdbs); in dsa_switch_do_lag_fdb_add()
352 mutex_unlock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_add()
357 static int dsa_switch_do_lag_fdb_del(struct dsa_switch *ds, struct dsa_lag *lag, in dsa_switch_do_lag_fdb_del() argument
364 mutex_lock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_del()
366 a = dsa_mac_addr_find(&lag->fdbs, addr, vid, db); in dsa_switch_do_lag_fdb_del()
375 err = ds->ops->lag_fdb_del(ds, *lag, addr, vid, db); in dsa_switch_do_lag_fdb_del()
385 mutex_unlock(&lag->fdb_lock); in dsa_switch_do_lag_fdb_del()
402 err = dsa_switch_do_lag_fdb_add(ds, dp->lag, in dsa_switch_host_fdb_add()
430 err = dsa_switch_do_lag_fdb_del(ds, dp->lag, in dsa_switch_host_fdb_del()
478 /* Notify switch only if it has a port in this LAG */ in dsa_switch_lag_fdb_add()
480 if (dsa_port_offloads_lag(dp, info->lag)) in dsa_switch_lag_fdb_add()
481 return dsa_switch_do_lag_fdb_add(ds, info->lag, in dsa_switch_lag_fdb_add()
496 /* Notify switch only if it has a port in this LAG */ in dsa_switch_lag_fdb_del()
498 if (dsa_port_offloads_lag(dp, info->lag)) in dsa_switch_lag_fdb_del()
499 return dsa_switch_do_lag_fdb_del(ds, info->lag, in dsa_switch_lag_fdb_del()
523 return ds->ops->port_lag_join(ds, info->dp->index, info->lag, in dsa_switch_lag_join()
528 info->dp->index, info->lag, in dsa_switch_lag_join()
538 return ds->ops->port_lag_leave(ds, info->dp->index, info->lag); in dsa_switch_lag_leave()
542 info->dp->index, info->lag); in dsa_switch_lag_leave()