From: David Ahern <dsahern@kernel.org>
To: davem@davemloft.net, netdev@vger.kernel.org
Cc: eric.dumazet@gmail.com, idosch@mellanox.com,
David Ahern <dsahern@gmail.com>
Subject: [PATCH net-next 0/7] ipv6: Move exceptions to fib6_nh and make it optional in a fib6_info
Date: Wed, 22 May 2019 20:27:54 -0700 [thread overview]
Message-ID: <20190523032801.11122-1-dsahern@kernel.org> (raw)
From: David Ahern <dsahern@gmail.com>
Patches 1 and 4 move pcpu and exception caches from fib6_info to fib6_nh.
With respect to the current FIB entries this is only a movement from one
struct to another contained within the first.
Patch 2 refactors the core logic of fib6_drop_pcpu_from into a helper
that is invoked per fib6_nh.
Patch 3 refactors exception handling in a similar way - creating a bunch
of helpers that can be invoked per fib6_nh with the goal of making patch
4 easier to review as well as creating the code needed for nexthop
objects.
Patch 5 makes a fib6_nh at the end of a fib6_info an array similar to
IPv4 and its fib_info. For the current fib entry model, all fib6_info
will have a fib6_nh allocated for it.
Patch 6 refactors ip6_route_del moving the code for deleting an
exception entry into a new function.
Patch 7 adds tests for redirect route exceptions. The new test was
written against 5.1 (before any of the nexthop refactoring). It and the
pmtu.sh selftest exercise the exception code paths - from creating
exceptions to cleaning them up on device delete. All tests pass without
any rcu locking or memleak warnings.
David Ahern (7):
ipv6: Move pcpu cached routes to fib6_nh
ipv6: Refactor fib6_drop_pcpu_from
ipv6: Refactor exception functions
ipv6: Move exception bucket to fib6_nh
ipv6: Make fib6_nh optional at the end of fib6_info
ipv6: Refactor ip6_route_del for cached routes
selftests: Add redirect tests
.../net/ethernet/mellanox/mlxsw/spectrum_router.c | 31 +-
include/net/ip6_fib.h | 17 +-
include/net/ip6_route.h | 4 +-
net/ipv6/addrconf.c | 10 +-
net/ipv6/ip6_fib.c | 87 ++--
net/ipv6/ndisc.c | 8 +-
net/ipv6/route.c | 452 ++++++++++++--------
tools/testing/selftests/net/icmp_redirect.sh | 455 +++++++++++++++++++++
8 files changed, 820 insertions(+), 244 deletions(-)
create mode 100755 tools/testing/selftests/net/icmp_redirect.sh
--
2.11.0
next reply other threads:[~2019-05-23 3:28 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-23 3:27 David Ahern [this message]
2019-05-23 3:27 ` [PATCH net-next 1/7] ipv6: Move pcpu cached routes to fib6_nh David Ahern
2019-05-23 3:27 ` [PATCH net-next 2/7] ipv6: Refactor fib6_drop_pcpu_from David Ahern
2019-05-23 3:27 ` [PATCH net-next 3/7] ipv6: Refactor exception functions David Ahern
2019-05-23 3:27 ` [PATCH net-next 4/7] ipv6: Move exception bucket to fib6_nh David Ahern
2019-05-23 3:27 ` [PATCH net-next 5/7] ipv6: Make fib6_nh optional at the end of fib6_info David Ahern
2019-05-23 3:28 ` [PATCH net-next 6/7] ipv6: Refactor ip6_route_del for cached routes David Ahern
2019-05-23 3:28 ` [PATCH net-next 7/7] selftests: Add redirect tests David Ahern
2019-05-24 20:28 ` [PATCH net-next 0/7] ipv6: Move exceptions to fib6_nh and make it optional in a fib6_info David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190523032801.11122-1-dsahern@kernel.org \
--to=dsahern@kernel.org \
--cc=davem@davemloft.net \
--cc=dsahern@gmail.com \
--cc=eric.dumazet@gmail.com \
--cc=idosch@mellanox.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).