From: Ido Schimmel <ido...@nvidia.com>

This patch set adds support for nexthop objects in mlxsw. Nexthop
objects are treated as another front-end for programming nexthops, in
addition to the existing IPv4 and IPv6 front-ends.

Patch #1 registers a listener to the nexthop notification chain and
parses the nexthop information into the existing mlxsw data structures
that are already used by the IPv4 and IPv6 front-ends. Blackhole
nexthops are currently rejected. Support will be added in a follow-up
patch set.

Patch #2 extends mlxsw to resolve its internal nexthop objects from the
nexthop identifier encoded in the FIB info of the notified routes.

Patch #3 finally removes the limitation of rejecting routes that use
nexthop objects.

Patch #4 adds a selftest.

Patches #5-#8 add generic forwarding selftests that can be used with
veth pairs or physical loopbacks.

Ido Schimmel (8):
  mlxsw: spectrum_router: Add support for nexthop objects
  mlxsw: spectrum_router: Enable resolution of nexthop groups from
    nexthop objects
  mlxsw: spectrum_router: Allow programming routes with nexthop objects
  selftests: mlxsw: Add nexthop objects configuration tests
  selftests: forwarding: Do not configure nexthop objects twice
  selftests: forwarding: Test IPv4 routes with IPv6 link-local nexthops
  selftests: forwarding: Add device-only nexthop test
  selftests: forwarding: Add multipath tunneling nexthop test

 .../ethernet/mellanox/mlxsw/spectrum_router.c | 498 +++++++++++++++++-
 .../ethernet/mellanox/mlxsw/spectrum_router.h |   1 +
 .../selftests/drivers/net/mlxsw/rtnetlink.sh  | 189 +++++++
 .../net/forwarding/gre_multipath_nh.sh        | 356 +++++++++++++
 .../net/forwarding/router_mpath_nh.sh         |  12 +-
 .../selftests/net/forwarding/router_nh.sh     | 160 ++++++
 6 files changed, 1201 insertions(+), 15 deletions(-)
 create mode 100755 tools/testing/selftests/net/forwarding/gre_multipath_nh.sh
 create mode 100755 tools/testing/selftests/net/forwarding/router_nh.sh

-- 
2.28.0

Reply via email to