mlxsw: spectrum_switchdev: Remove mrouter flood in mdb flush

In mdb flush the port is being removed from all the mids it is registered
to. But if the port is mrouter, all the mids floods to it.
This patch remove mrouter ports from mids it is not registered to in the
mdb flush.

Signed-off-by: Nogah Frankel <[email protected]>
Signed-off-by: Jiri Pirko <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
Nogah Frankel authored and David S. Miller committed 2017-09-20 18:03:13 -07:00
1 parent 3ddda1178e
commit 0166277706
1 file changed
+3
@@ -1673,6 +1673,9 @@ mlxsw_sp_bridge_port_mdb_flush(struct mlxsw_sp_port *mlxsw_sp_port,
if (test_bit(mlxsw_sp_port->local_port, mid->ports_in_mid)) {
__mlxsw_sp_port_mdb_del(mlxsw_sp_port, bridge_port,
mid);
} else if (bridge_device->multicast_enabled &&
bridge_port->mrouter) {
mlxsw_sp_port_smid_set(mlxsw_sp_port, mid->mid, false);
}
}
}