[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20181012.094923.186421869692031719.davem@davemloft.net>
Date: Fri, 12 Oct 2018 09:49:23 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: dsahern@...nel.org
Cc: netdev@...r.kernel.org, roopa@...ulusnetworks.com,
dsahern@...il.com
Subject: Re: [PATCH v2 net-next] net/ipv6: Add knob to skip DELROUTE
message on device down
From: David Ahern <dsahern@...nel.org>
Date: Thu, 11 Oct 2018 20:17:21 -0700
> From: David Ahern <dsahern@...il.com>
>
> Another difference between IPv4 and IPv6 is the generation of RTM_DELROUTE
> notifications when a device is taken down (admin down) or deleted. IPv4
> does not generate a message for routes evicted by the down or delete;
> IPv6 does. A NOS at scale really needs to avoid these messages and have
> IPv4 and IPv6 behave similarly, relying on userspace to handle link
> notifications and evict the routes.
>
> At this point existing user behavior needs to be preserved. Since
> notifications are a global action (not per app) the only way to preserve
> existing behavior and allow the messages to be skipped is to add a new
> sysctl (net/ipv6/route/skip_notify_on_dev_down) which can be set to
> disable the notificatioons.
>
> IPv6 route code already supports the option to skip the message (it is
> used for multipath routes for example). Besides the new sysctl we need
> to pass the skip_notify setting through the generic fib6_clean and
> fib6_walk functions to fib6_clean_node and to set skip_notify on calls
> to __ip_del_rt for the addrconf_ifdown path.
>
> Signed-off-by: David Ahern <dsahern@...il.com>
> ---
> v2
> - removed the changes to addrconf and anycast. addrconf_ifdown calls
> rt6_disable_ip which calls rt6_sync_down_dev. The last one evicts all
> routes for the device, so the delete route calls done later in addrconf
> and anycast are superfluous
Applied.
Powered by blists - more mailing lists