From: <ido...@mellanox.com> Date: Sun, 30 Apr 2017 19:47:14 +0300 > From: Ido Schimmel <ido...@mellanox.com> > > When a netdev is enslaved to a VRF master, its router interface (RIF) > needs to be destroyed (if exists) and a new one created using the > corresponding virtual router (VR). > > From the driver's perspective, the above is equivalent to an inetaddr > event sent for this netdev. Therefore, when a port netdev (or its > uppers) are enslaved to a VRF master, call the same function that > would've been called had a NETDEV_UP was sent for this netdev in the > inetaddr notification chain. > > This patch also fixes a bug when a LAG netdev with an existing RIF is > enslaved to a VRF. Before this patch, each LAG port would drop the > reference on the RIF, but would re-join the same one (in the wrong VR) > soon after. With this patch, the corresponding RIF is first destroyed > and a new one is created using the correct VR. > > Fixes: 7179eb5acd59 ("mlxsw: spectrum_router: Add support for VRFs") > Signed-off-by: Ido Schimmel <ido...@mellanox.com> > Reviewed-by: Jiri Pirko <j...@mellanox.com>
Applied, thanks.