mbox series

[net-next,0/8] mlxsw: Add support for VxLAN with IPv6 underlay

Message ID 20211214142551.606542-1-idosch@nvidia.com (mailing list archive)
Headers show
Series mlxsw: Add support for VxLAN with IPv6 underlay | expand

Message

Ido Schimmel Dec. 14, 2021, 2:25 p.m. UTC
So far, mlxsw only supported VxLAN with IPv4 underlay. This patchset
extends mlxsw to also support VxLAN with IPv6 underlay. The main
difference is related to the way IPv6 addresses are handled by the
device. See patch #1 for a detailed explanation.

Patch #1 creates a common hash table to store the mapping from IPv6
addresses to KVDL indexes. This table is useful for both IP-in-IP and
VxLAN tunnels with an IPv6 underlay.

Patch #2 converts the IP-in-IP code to use the new hash table.

Patches #3-#6 are preparations.

Patch #7 finally adds support for VxLAN with IPv6 underlay.

Patch #8 removes a test case that checked that VxLAN configurations with
IPv6 underlay are vetoed by the driver.

A follow-up patchset will add forwarding selftests.

Amit Cohen (8):
  mlxsw: spectrum: Add hash table for IPv6 address mapping
  mlxsw: spectrum_ipip: Use common hash table for IPv6 address mapping
  mlxsw: spectrum_nve_vxlan: Make VxLAN flags check per address family
  mlxsw: Split handling of FDB tunnel entries between address families
  mlxsw: reg: Add a function to fill IPv6 unicast FDB entries
  mlxsw: spectrum_nve: Keep track of IPv6 addresses used by FDB entries
  mlxsw: Add support for VxLAN with IPv6 underlay
  selftests: mlxsw: vxlan: Remove IPv6 test case

 drivers/net/ethernet/mellanox/mlxsw/reg.h     |  30 +++-
 .../net/ethernet/mellanox/mlxsw/spectrum.c    | 143 +++++++++++++++
 .../net/ethernet/mellanox/mlxsw/spectrum.h    |  18 ++
 .../ethernet/mellanox/mlxsw/spectrum_ipip.c   |  28 +--
 .../ethernet/mellanox/mlxsw/spectrum_nve.c    | 165 +++++++++++++++++-
 .../ethernet/mellanox/mlxsw/spectrum_nve.h    |   2 +
 .../mellanox/mlxsw/spectrum_nve_vxlan.c       |  97 ++++++++--
 .../ethernet/mellanox/mlxsw/spectrum_router.c |  14 ++
 .../mellanox/mlxsw/spectrum_switchdev.c       | 127 +++++++++++---
 .../selftests/drivers/net/mlxsw/vxlan.sh      |  18 --
 10 files changed, 558 insertions(+), 84 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org Dec. 15, 2021, 3:10 p.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (master)
by David S. Miller <davem@davemloft.net>:

On Tue, 14 Dec 2021 16:25:43 +0200 you wrote:
> So far, mlxsw only supported VxLAN with IPv4 underlay. This patchset
> extends mlxsw to also support VxLAN with IPv6 underlay. The main
> difference is related to the way IPv6 addresses are handled by the
> device. See patch #1 for a detailed explanation.
> 
> Patch #1 creates a common hash table to store the mapping from IPv6
> addresses to KVDL indexes. This table is useful for both IP-in-IP and
> VxLAN tunnels with an IPv6 underlay.
> 
> [...]

Here is the summary with links:
  - [net-next,1/8] mlxsw: spectrum: Add hash table for IPv6 address mapping
    https://git.kernel.org/netdev/net-next/c/e846efe2737b
  - [net-next,2/8] mlxsw: spectrum_ipip: Use common hash table for IPv6 address mapping
    https://git.kernel.org/netdev/net-next/c/cf42911523e0
  - [net-next,3/8] mlxsw: spectrum_nve_vxlan: Make VxLAN flags check per address family
    https://git.kernel.org/netdev/net-next/c/720d683cbe8b
  - [net-next,4/8] mlxsw: Split handling of FDB tunnel entries between address families
    https://git.kernel.org/netdev/net-next/c/1fd85416e3b5
  - [net-next,5/8] mlxsw: reg: Add a function to fill IPv6 unicast FDB entries
    https://git.kernel.org/netdev/net-next/c/4b08c3e676b1
  - [net-next,6/8] mlxsw: spectrum_nve: Keep track of IPv6 addresses used by FDB entries
    https://git.kernel.org/netdev/net-next/c/0860c7641634
  - [net-next,7/8] mlxsw: Add support for VxLAN with IPv6 underlay
    https://git.kernel.org/netdev/net-next/c/06c08f869c0e
  - [net-next,8/8] selftests: mlxsw: vxlan: Remove IPv6 test case
    https://git.kernel.org/netdev/net-next/c/fb488be8c28d

You are awesome, thank you!