mirror of
https://gitee.com/bianbu-linux/linux-6.6-fh
synced 2025-04-25 11:57:07 -04:00
net: dsa: remove cross-chip support for HSR
The cross-chip notifiers for HSR are bypass operations, meaning that even though all switches in a tree are notified, only the switch specified in the info structure is targeted. We can eliminate the unnecessary complexity by deleting the cross-chip notifier logic and calling the ds->ops straight from port.c. Cc: George McCollister <george.mccollister@gmail.com> Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: George McCollister <george.mccollister@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
cad69019f2
commit
a68dc7b938
3 changed files with 13 additions and 49 deletions
|
@ -437,24 +437,6 @@ static int dsa_switch_fdb_del(struct dsa_switch *ds,
|
|||
return dsa_port_do_fdb_del(dp, info->addr, info->vid);
|
||||
}
|
||||
|
||||
static int dsa_switch_hsr_join(struct dsa_switch *ds,
|
||||
struct dsa_notifier_hsr_info *info)
|
||||
{
|
||||
if (ds->index == info->sw_index && ds->ops->port_hsr_join)
|
||||
return ds->ops->port_hsr_join(ds, info->port, info->hsr);
|
||||
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
static int dsa_switch_hsr_leave(struct dsa_switch *ds,
|
||||
struct dsa_notifier_hsr_info *info)
|
||||
{
|
||||
if (ds->index == info->sw_index && ds->ops->port_hsr_leave)
|
||||
return ds->ops->port_hsr_leave(ds, info->port, info->hsr);
|
||||
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
static int dsa_switch_lag_change(struct dsa_switch *ds,
|
||||
struct dsa_notifier_lag_info *info)
|
||||
{
|
||||
|
@ -729,12 +711,6 @@ static int dsa_switch_event(struct notifier_block *nb,
|
|||
case DSA_NOTIFIER_HOST_FDB_DEL:
|
||||
err = dsa_switch_host_fdb_del(ds, info);
|
||||
break;
|
||||
case DSA_NOTIFIER_HSR_JOIN:
|
||||
err = dsa_switch_hsr_join(ds, info);
|
||||
break;
|
||||
case DSA_NOTIFIER_HSR_LEAVE:
|
||||
err = dsa_switch_hsr_leave(ds, info);
|
||||
break;
|
||||
case DSA_NOTIFIER_LAG_CHANGE:
|
||||
err = dsa_switch_lag_change(ds, info);
|
||||
break;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue