diff options
author | David Ahern <dsahern@gmail.com> | 2018-10-11 20:17:21 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-10-12 09:47:02 -0700 |
commit | 7c6bb7d2faaf1ed7d78bafd712476e4cf2cf0d7d (patch) | |
tree | 6ae3cb0932762a3cada0d2e9526946a9ed874dfb /Documentation/networking | |
parent | 7cc2d504daa0454d2c7c1a0c15a6a21df0ac3c8a (diff) | |
download | linux-stable-7c6bb7d2faaf1ed7d78bafd712476e4cf2cf0d7d.tar.gz linux-stable-7c6bb7d2faaf1ed7d78bafd712476e4cf2cf0d7d.tar.bz2 linux-stable-7c6bb7d2faaf1ed7d78bafd712476e4cf2cf0d7d.zip |
net/ipv6: Add knob to skip DELROUTE message on device down
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@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'Documentation/networking')
-rw-r--r-- | Documentation/networking/ip-sysctl.txt | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Documentation/networking/ip-sysctl.txt b/Documentation/networking/ip-sysctl.txt index 960de8fe3f40..163b5ff1073c 100644 --- a/Documentation/networking/ip-sysctl.txt +++ b/Documentation/networking/ip-sysctl.txt @@ -1442,6 +1442,14 @@ max_hbh_length - INTEGER header. Default: INT_MAX (unlimited) +skip_notify_on_dev_down - BOOLEAN + Controls whether an RTM_DELROUTE message is generated for routes + removed when a device is taken down or deleted. IPv4 does not + generate this message; IPv6 does by default. Setting this sysctl + to true skips the message, making IPv4 and IPv6 on par in relying + on userspace caches to track link events and evict routes. + Default: false (generate message) + IPv6 Fragmentation: ip6frag_high_thresh - INTEGER |