netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 00/14] mlxsw: Preparations for resilient nexthop groups
@ 2021-03-22 15:58 Ido Schimmel
  2021-03-22 15:58 ` [PATCH net-next 01/14] mlxsw: spectrum_router: Remove RTNL assertion Ido Schimmel
                   ` (14 more replies)
  0 siblings, 15 replies; 16+ messages in thread
From: Ido Schimmel @ 2021-03-22 15:58 UTC (permalink / raw)
  To: netdev; +Cc: davem, kuba, jiri, petrm, dsahern, mlxsw, Ido Schimmel

From: Ido Schimmel <idosch@nvidia.com>

This patchset contains preparations for resilient nexthop groups support in
mlxsw. A follow-up patchset will add support and selftests. Most of the
patches are trivial and small to make review easier.

Patchset overview:

Patch #1 removes RTNL assertion in nexthop notifier block since it is
not needed. The assertion will trigger when mlxsw starts processing
notifications related to resilient groups as not all are emitted with
RTNL held.

Patches #2-#9 gradually add support for nexthops with trap action. Up
until now mlxsw did not program nexthops whose neighbour entry was not
resolved. This will not work with resilient groups as their size is
fixed and the nexthop mapped to each bucket is determined by the nexthop
code. Therefore, nexthops whose neighbour entry is not resolved will be
programmed to trap packets to the CPU in order to trigger neighbour
resolution.

Patch #10 is a non-functional change to allow for code reuse between
regular nexthop groups and resilient ones.

Patch #11 avoids unnecessary neighbour updates in hardware. See the
commit message for a detailed explanation.

Patches #12-#14 add support for additional nexthop group sizes that are
supported by Spectrum-{2,3} ASICs.

Ido Schimmel (14):
  mlxsw: spectrum_router: Remove RTNL assertion
  mlxsw: spectrum_router: Consolidate nexthop helpers
  mlxsw: spectrum_router: Only provide MAC address for valid nexthops
  mlxsw: spectrum_router: Adjust comments on nexthop fields
  mlxsw: spectrum_router: Introduce nexthop action field
  mlxsw: spectrum_router: Prepare for nexthops with trap action
  mlxsw: spectrum_router: Add nexthop trap action support
  mlxsw: spectrum_router: Rename nexthop update function to reflect its
    type
  mlxsw: spectrum_router: Encapsulate nexthop update in a function
  mlxsw: spectrum_router: Break nexthop group entry validation to a
    separate function
  mlxsw: spectrum_router: Avoid unnecessary neighbour updates
  mlxsw: spectrum_router: Create per-ASIC router operations
  mlxsw: spectrum_router: Encode adjacency group size ranges in an array
  mlxsw: spectrum_router: Add Spectrum-{2, 3} adjacency group size
    ranges

 .../net/ethernet/mellanox/mlxsw/spectrum.c    |   6 +-
 .../net/ethernet/mellanox/mlxsw/spectrum.h    |   8 +-
 .../ethernet/mellanox/mlxsw/spectrum_dpipe.c  |  19 +-
 .../ethernet/mellanox/mlxsw/spectrum_router.c | 277 +++++++++++++-----
 .../ethernet/mellanox/mlxsw/spectrum_router.h |   9 +-
 5 files changed, 218 insertions(+), 101 deletions(-)

-- 
2.29.2


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2021-03-22 20:51 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-03-22 15:58 [PATCH net-next 00/14] mlxsw: Preparations for resilient nexthop groups Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 01/14] mlxsw: spectrum_router: Remove RTNL assertion Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 02/14] mlxsw: spectrum_router: Consolidate nexthop helpers Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 03/14] mlxsw: spectrum_router: Only provide MAC address for valid nexthops Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 04/14] mlxsw: spectrum_router: Adjust comments on nexthop fields Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 05/14] mlxsw: spectrum_router: Introduce nexthop action field Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 06/14] mlxsw: spectrum_router: Prepare for nexthops with trap action Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 07/14] mlxsw: spectrum_router: Add nexthop trap action support Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 08/14] mlxsw: spectrum_router: Rename nexthop update function to reflect its type Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 09/14] mlxsw: spectrum_router: Encapsulate nexthop update in a function Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 10/14] mlxsw: spectrum_router: Break nexthop group entry validation to a separate function Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 11/14] mlxsw: spectrum_router: Avoid unnecessary neighbour updates Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 12/14] mlxsw: spectrum_router: Create per-ASIC router operations Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 13/14] mlxsw: spectrum_router: Encode adjacency group size ranges in an array Ido Schimmel
2021-03-22 15:58 ` [PATCH net-next 14/14] mlxsw: spectrum_router: Add Spectrum-{2, 3} adjacency group size ranges Ido Schimmel
2021-03-22 20:50 ` [PATCH net-next 00/14] mlxsw: Preparations for resilient nexthop groups patchwork-bot+netdevbpf

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).