Skip to content

mlxsw: Add Spectrum-1 ip6gre support

Petr Machata netdev 1 version Applied

Status from this message: This series was applied to netdev/net-next.git (master)

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest6 patches 1 replyApplied 6/6

Patches in v1 All 6 applied

#Subject and filesSizeRepliesApplied
1/6mlxsw: spectrum_router: Use gen_pool for RIF index allocationdrivers/net/ethernet/mellanox/mlxsw/spectrum_router.c drivers/net/ethernet/mellanox/mlxsw/spectrum_router.h+67 -100 repliesApplied
2/6mlxsw: spectrum_router: Parametrize RIF allocation sizedrivers/net/ethernet/mellanox/mlxsw/spectrum_router.c+27 -140 repliesApplied
3/6mlxsw: spectrum_router: Add support for double entry RIFsdrivers/net/ethernet/mellanox/mlxsw/spectrum_ipip.c drivers/net/ethernet/mellanox/mlxsw/spectrum_ipip.h drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c+5 -10 repliesApplied
4/6mlxsw: spectrum_ipip: Rename Spectrum-2 ip6gre operationsdrivers/net/ethernet/mellanox/mlxsw/spectrum_ipip.c+47 -470 repliesApplied
5/6mlxsw: spectrum_ipip: Add Spectrum-1 ip6gre supportdrivers/net/ethernet/mellanox/mlxsw/spectrum_ipip.c+8 -750 repliesApplied
6/6selftests: mlxsw: Move IPv6 decap_error test to shared directorytools/testing/selftests/drivers/net/mlxsw/devlink_trap_tunnel_ipip6.sh+1 -10 repliesApplied

Reviews trailers per patch

All 6 patches have a Reviewed-by or Acked-by.

PatchAmit Cohen
1/6R-b
2/6R-b
3/6R-b
4/6R-b
5/6R-b
6/6R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH net 0/6] mlxsw: Add Spectrum-1 ip6gre support

Ido Schimmel writes:

Currently, mlxsw only supports ip6gre offload on Spectrum-2 and newer ASICs. Spectrum-1 can also offload ip6gre tunnels, but it needs double entry router interfaces (RIFs) for the RIFs representing these tunnels. In addition, the RIF index needs to be even. This is handled in patches #1-#3.

The implementation can otherwise be shared between all Spectrum generations. This is handled in patches #4-#5.

Patch #6 moves a mlxsw ip6gre selftest to a shared directory, as ip6gre is no longer only supported on Spectrum-2 and newer ASICs.

This work is motivated by users that require multiple GRE tunnels that all share the same underlay VRF. Currently, mlxsw only supports decapsulation based on the underlay destination IP (i.e., not taking the GRE key into account), so users need to configure these tunnels with different source IPs and IPv6 addresses are easier to spare than IPv4.

Tested using existing ip6gre forwarding selftests.

Ido Schimmel (6):
mlxsw: spectrum_router: Use gen_pool for RIF index allocation
mlxsw: spectrum_router: Parametrize RIF allocation size
mlxsw: spectrum_router: Add support for double entry RIFs
mlxsw: spectrum_ipip: Rename Spectrum-2 ip6gre operations
mlxsw: spectrum_ipip: Add Spectrum-1 ip6gre support
selftests: mlxsw: Move IPv6 decap_error test to shared directory

 .../ethernet/mellanox/mlxsw/spectrum_ipip.c   | 160 +++++-------------
 .../ethernet/mellanox/mlxsw/spectrum_ipip.h   |   1 +
 .../ethernet/mellanox/mlxsw/spectrum_router.c | 102 +++++++++--
 .../ethernet/mellanox/mlxsw/spectrum_router.h |   4 +
 .../devlink_trap_tunnel_ipip6.sh              |   2 +-
 5 files changed, 138 insertions(+), 131 deletions(-)
 rename tools/testing/selftests/drivers/net/mlxsw/{spectrum-2 => }/devlink_trap_tunnel_ipip6.sh (99%)
Signature · 1 line
2.35.3