[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20211214142551.606542-1-idosch@nvidia.com>
Date: Tue, 14 Dec 2021 16:25:43 +0200
From: Ido Schimmel <idosch@...dia.com>
To: netdev@...r.kernel.org
Cc: davem@...emloft.net, kuba@...nel.org, amcohen@...dia.com,
petrm@...dia.com, mlxsw@...dia.com,
Ido Schimmel <idosch@...dia.com>
Subject: [PATCH net-next 0/8] mlxsw: Add support for VxLAN with IPv6 underlay
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(-)
--
2.31.1
Powered by blists - more mailing lists