From: Ido Schimmel <ido...@mellanox.com> Date: Fri, 24 Aug 2018 15:41:35 +0300
> When a bridge device is removed, the VLANs are flushed from each > configured port. This causes the ports to decrement the reference count > on the associated FIDs (filtering identifier). If the reference count of > a FID is 1 and it has a RIF (router interface), then this RIF is > destroyed. > > However, if no port is member in the VLAN for which a RIF exists, then > the RIF will continue to exist after the removal of the bridge. To > reproduce: > > # ip link add name br0 type bridge vlan_filtering 1 > # ip link set dev swp1 master br0 > # ip link add link br0 name br0.10 type vlan id 10 > # ip address add 192.0.2.0/24 dev br0.10 > # ip link del dev br0 > > The RIF associated with br0.10 continues to exist. > > Fix this by iterating over all the bridge device uppers when it is > destroyed and take care of destroying their RIFs. > > Fixes: 99f44bb3527b ("mlxsw: spectrum: Enable L3 interfaces on top of bridge > devices") > Signed-off-by: Ido Schimmel <ido...@mellanox.com> > Reviewed-by: Petr Machata <pe...@mellanox.com> Applied and queued up for -stable, thanks.