]> git.baikalelectronics.ru Git - kernel.git/commit
net: ipv4: add sysctl for nexthop api compatibility mode
authorRoopa Prabhu <roopa@cumulusnetworks.com>
Mon, 27 Apr 2020 20:56:46 +0000 (13:56 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 28 Apr 2020 19:50:37 +0000 (12:50 -0700)
commitc42c4d1c48094118d9c34e676f36ce4b0aa6da14
tree7673a5205ba4759de3f9735e30cf3edd096e36e5
parent1d2d70a01cd6513faa6595050ad121621d9a2079
net: ipv4: add sysctl for nexthop api compatibility mode

Current route nexthop API maintains user space compatibility
with old route API by default. Dumps and netlink notifications
support both new and old API format. In systems which have
moved to the new API, this compatibility mode cancels some
of the performance benefits provided by the new nexthop API.

This patch adds new sysctl nexthop_compat_mode which is on
by default but provides the ability to turn off compatibility
mode allowing systems to run entirely with the new routing
API. Old route API behaviour and support is not modified by this
sysctl.

Uses a single sysctl to cover both ipv4 and ipv6 following
other sysctls. Covers dumps and delete notifications as
suggested by David Ahern.

Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
Reviewed-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/networking/ip-sysctl.txt
include/net/netns/ipv4.h
net/ipv4/af_inet.c
net/ipv4/fib_semantics.c
net/ipv4/nexthop.c
net/ipv4/sysctl_net_ipv4.c
net/ipv6/route.c