On 12/10/2015 07:25 PM, David Ahern wrote:
> The VRF driver cycles netdevs when an interface is enslaved or released:
> the down event is used to flush neighbor and route tables and the up
> event (if the interface was already up) effectively moves local and
> connected routes to the proper table.
> 
> As of 4f823defdd5b the local route is left hanging around after a link
> down, so when a netdev is moved from one VRF to another (or released
> from a VRF altogether) local routes are left in the wrong table.
> 
> Fix by handling the NETDEV_CHANGEUPPER event. When the upper dev is
> an L3mdev then call fib_disable_ip to flush all routes, local ones
> to.
> 
> Fixes: 4f823defdd5b ("ipv4: fix to not remove local route on link down")
> Cc: Julian Anastasov <j...@ssi.bg>
> Signed-off-by: David Ahern <d...@cumulusnetworks.com>
> ---
> v2
> - key off NETDEV_CHANGEUPPER event vs using a new event
> 
>  net/ipv4/fib_frontend.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 

Looks much better to me, thanks!

Signed-off-by: Nikolay Aleksandrov <niko...@cumulusnetworks.com>


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to