All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next 0/4] mlxsw: Refactor parsing configuration
@ 2021-08-22 11:37 Ido Schimmel
  2021-08-22 11:37 ` [PATCH net-next 1/4] mlxsw: spectrum: Add infrastructure for " Ido Schimmel
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Ido Schimmel @ 2021-08-22 11:37 UTC (permalink / raw)
  To: netdev; +Cc: davem, kuba, jiri, amcohen, mlxsw, Ido Schimmel

From: Ido Schimmel <idosch@nvidia.com>

The Spectrum ASIC has a configurable limit on how deep into the packet
it parses. By default, the limit is 96 bytes.

There are several cases where this parsing depth is not enough and there
is a need to increase it: Decapsulation of VxLAN packets and
timestamping of PTP packets.

Currently, parsing depth API is maintained as part of VxLAN module,
because the MPRS register which configures parsing depth also configures
UDP destination port number used for VxLAN encapsulation and
decapsulation.

However, in addition to two above mentioned users of this API, the
multipath hash code also needs to invoke it in order to correctly hash
based on inner fields of IPv6-in-IPv6 packets.

Upcoming support for IPv6-in-IPv6 tunneling will add another user, as
without increasing the parsing depth such packets cannot be properly
decapsulated.

Therefore, this patchset refactors the parsing configuration API and
moves it out of the VxLAN module to the main driver code.

Tested using existing selftests.

Patch set overview:

Patch #1 adds the new parsing configuration infrastructure.
Patch #2 converts existing users to the new infrastructure.
Patch #3 deletes the old infrastructure.
Patch #4 calls the new infrastructure from the multipath hash code.

Amit Cohen (4):
  mlxsw: spectrum: Add infrastructure for parsing configuration
  mlxsw: Convert existing consumers to use new API for parsing
    configuration
  mlxsw: Remove old parsing depth infrastructure
  mlxsw: spectrum_router: Increase parsing depth for multipath hash

 .../net/ethernet/mellanox/mlxsw/spectrum.c    | 82 ++++++++++++++++
 .../net/ethernet/mellanox/mlxsw/spectrum.h    | 12 +++
 .../ethernet/mellanox/mlxsw/spectrum_nve.h    |  1 -
 .../mellanox/mlxsw/spectrum_nve_vxlan.c       | 94 ++++---------------
 .../ethernet/mellanox/mlxsw/spectrum_ptp.c    |  4 +-
 .../ethernet/mellanox/mlxsw/spectrum_router.c | 44 ++++++++-
 .../ethernet/mellanox/mlxsw/spectrum_router.h |  1 +
 7 files changed, 160 insertions(+), 78 deletions(-)

-- 
2.31.1


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

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

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-22 11:37 [PATCH net-next 0/4] mlxsw: Refactor parsing configuration Ido Schimmel
2021-08-22 11:37 ` [PATCH net-next 1/4] mlxsw: spectrum: Add infrastructure for " Ido Schimmel
2021-08-22 11:37 ` [PATCH net-next 2/4] mlxsw: Convert existing consumers to use new API " Ido Schimmel
2021-08-22 11:37 ` [PATCH net-next 3/4] mlxsw: Remove old parsing depth infrastructure Ido Schimmel
2021-08-22 11:37 ` [PATCH net-next 4/4] mlxsw: spectrum_router: Increase parsing depth for multipath hash Ido Schimmel
2021-08-22 20:50 ` [PATCH net-next 0/4] mlxsw: Refactor parsing configuration patchwork-bot+netdevbpf

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.