From: Jiri Pirko <[email protected]> Date: Fri, 1 Sep 2017 10:52:31 +0200
> From: Ido Schimmel <[email protected]> > > The mlxsw driver relies on NETDEV_CHANGEUPPER events to configure the > device in case a port is enslaved to a master netdev such as bridge or > bond. > > Since the driver ignores events unrelated to its ports and their > uppers, it's possible to engineer situations in which the device's data > path differs from the kernel's. > > One example to such a situation is when a port is enslaved to a bond > that is already enslaved to a bridge. When the bond was enslaved the > driver ignored the event - as the bond wasn't one of its uppers - and > therefore a bridge port instance isn't created in the device. > > Until such configurations are supported forbid them by checking that the > upper device doesn't have uppers of its own. > > Fixes: 0d65fc13042f ("mlxsw: spectrum: Implement LAG port join/leave") > Signed-off-by: Ido Schimmel <[email protected]> > Reported-by: Nogah Frankel <[email protected]> > Tested-by: Nogah Frankel <[email protected]> > Signed-off-by: Jiri Pirko <[email protected]> Applied and queued up for -stable, thanks.
