[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1588021007-16914-1-git-send-email-roopa@cumulusnetworks.com>
Date: Mon, 27 Apr 2020 13:56:44 -0700
From: Roopa Prabhu <roopa@...ulusnetworks.com>
To: dsahern@...il.com, davem@...emloft.net
Cc: netdev@...r.kernel.org, rdunlap@...radead.org,
nikolay@...ulusnetworks.com, bpoirier@...ulusnetworks.com
Subject: [PATCH net-next v4 0/3] New sysctl to turn off nexthop API compat mode
From: Roopa Prabhu <roopa@...ulusnetworks.com>
Currently 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 if they wish to. Old route API behaviour and support is
not modified by this sysctl
v4:
- Use davids note for Documenting the sysctl
- test with latest iproute2 and adjust 'pref'
v3:
- Document new sysctl
- move sysctl to use proc_dointvec_minmax with 0 and 1 values
- selftest: remove pref medium in ipv6 test
v2:
- Incorporate David Aherns pointers on covering dumps and
nexthop deletes. Also use one ipv4 sysctl to cover
both ipv4 and ipv6 (I see it is done that way for many
others)
- Added a selftest to cover dump and notfications for nexthop
api compat mode
Roopa Prabhu (3):
net: ipv6: new arg skip_notify to ip6_rt_del
net: ipv4: add sysctl for nexthop api compatibility mode
selftests: net: add new testcases for nexthop API compat mode sysctl
Documentation/networking/ip-sysctl.txt | 14 ++
include/net/ip6_route.h | 2 +-
include/net/ipv6_stubs.h | 2 +-
include/net/netns/ipv4.h | 2 +
net/ipv4/af_inet.c | 1 +
net/ipv4/fib_semantics.c | 3 +
net/ipv4/nexthop.c | 5 +-
net/ipv4/sysctl_net_ipv4.c | 9 ++
net/ipv6/addrconf.c | 12 +-
net/ipv6/addrconf_core.c | 3 +-
net/ipv6/anycast.c | 4 +-
net/ipv6/ndisc.c | 2 +-
net/ipv6/route.c | 14 +-
tools/testing/selftests/net/fib_nexthops.sh | 198 +++++++++++++++++++++++++++-
14 files changed, 250 insertions(+), 21 deletions(-)
--
2.1.4
Powered by blists - more mailing lists