Skip to content

mlxsw: Add port range matching support

Petr Machata netdev 1 version Applied

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

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest10 patches 1 replyApplied 10/10

Patches in v1 All 10 applied

#Subject and filesSizeRepliesApplied
1/10mlxsw: reg: Add Policy-Engine Port Range Registerdrivers/net/ethernet/mellanox/mlxsw/reg.h+73 -00 repliesApplied
2/10mlxsw: resource: Add resource identifier for port range registersdrivers/net/ethernet/mellanox/mlxsw/resources.h+2 -00 repliesApplied
3/10mlxsw: spectrum_port_range: Add port range coredrivers/net/ethernet/mellanox/mlxsw/Makefile drivers/net/ethernet/mellanox/mlxsw/spectrum.c drivers/net/ethernet/mellanox/mlxsw/spectrum.h +1 more+206 -10 repliesApplied
4/10mlxsw: spectrum_port_range: Add devlink resource supportdrivers/net/ethernet/mellanox/mlxsw/spectrum.c drivers/net/ethernet/mellanox/mlxsw/spectrum.h drivers/net/ethernet/mellanox/mlxsw/spectrum_port_range.c+50 -00 repliesApplied
5/10mlxsw: spectrum_acl: Add port range key elementdrivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.c drivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.h drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_flex_keys.c+5 -00 repliesApplied
6/10mlxsw: spectrum_acl: Pass main driver structure to mlxsw_sp_acl_rulei_destroy()drivers/net/ethernet/mellanox/mlxsw/spectrum.h drivers/net/ethernet/mellanox/mlxsw/spectrum1_acl_tcam.c drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c+7 -50 repliesApplied
7/10mlxsw: spectrum_flower: Add ability to match on port rangesdrivers/net/ethernet/mellanox/mlxsw/spectrum.h drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c+79 -10 repliesApplied
8/10selftests: mlxsw: Add scale test for port rangestools/testing/selftests/drivers/net/mlxsw/port_range_scale.sh tools/testing/selftests/drivers/net/mlxsw/spectrum-2/port_range_scale.sh tools/testing/selftests/drivers/net/mlxsw/spectrum-2/resource_scale.sh +2 more+114 -00 repliesApplied
9/10selftests: mlxsw: Test port range registers' occupancytools/testing/selftests/drivers/net/mlxsw/port_range_occ.sh+111 -00 repliesApplied
10/10selftests: forwarding: Add test cases for flower port range matchingtools/testing/selftests/net/forwarding/Makefile tools/testing/selftests/net/forwarding/tc_flower_port_range.sh+229 -00 repliesApplied

Reviews trailers per patch

All 10 patches have a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchPetr MachataSimon Horman
SeriesR-b
1/10R-b
2/10R-b
3/10R-b
4/10R-b
5/10R-b
6/10R-b
7/10R-b
8/10R-b
9/10R-b
10/10R-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-next 00/10] mlxsw: Add port range matching support

Ido Schimmel writes:

Add port range matching support in mlxsw as part of tc-flower offload.

Patches #1-#7 gradually add port range matching support in mlxsw. See patch #3 to understand how port range matching is implemented in the device.

Patches #8-#10 add selftests.

Ido Schimmel (10):
mlxsw: reg: Add Policy-Engine Port Range Register
mlxsw: resource: Add resource identifier for port range registers
mlxsw: spectrum_port_range: Add port range core
mlxsw: spectrum_port_range: Add devlink resource support
mlxsw: spectrum_acl: Add port range key element
mlxsw: spectrum_acl: Pass main driver structure to
mlxsw_sp_acl_rulei_destroy()
mlxsw: spectrum_flower: Add ability to match on port ranges
selftests: mlxsw: Add scale test for port ranges
selftests: mlxsw: Test port range registers' occupancy
selftests: forwarding: Add test cases for flower port range matching

 drivers/net/ethernet/mellanox/mlxsw/Makefile  |   2 +-
 .../mellanox/mlxsw/core_acl_flex_keys.c       |   1 +
 .../mellanox/mlxsw/core_acl_flex_keys.h       |   1 +
 drivers/net/ethernet/mellanox/mlxsw/reg.h     |  73 ++++++
 .../net/ethernet/mellanox/mlxsw/resources.h   |   2 +
 .../net/ethernet/mellanox/mlxsw/spectrum.c    |  39 +++
 .../net/ethernet/mellanox/mlxsw/spectrum.h    |  25 +-
 .../mellanox/mlxsw/spectrum1_acl_tcam.c       |   4 +-
 .../ethernet/mellanox/mlxsw/spectrum_acl.c    |  11 +-
 .../mellanox/mlxsw/spectrum_acl_flex_keys.c   |   3 +
 .../ethernet/mellanox/mlxsw/spectrum_flower.c |  68 ++++++
 .../mellanox/mlxsw/spectrum_port_range.c      | 200 +++++++++++++++
 .../drivers/net/mlxsw/port_range_occ.sh       | 111 +++++++++
 .../drivers/net/mlxsw/port_range_scale.sh     |  95 ++++++++
 .../net/mlxsw/spectrum-2/port_range_scale.sh  |   1 +
 .../net/mlxsw/spectrum-2/resource_scale.sh    |   1 +
 .../net/mlxsw/spectrum/port_range_scale.sh    |  16 ++
 .../net/mlxsw/spectrum/resource_scale.sh      |   1 +
 .../testing/selftests/net/forwarding/Makefile |   1 +
 .../net/forwarding/tc_flower_port_range.sh    | 228 ++++++++++++++++++
 20 files changed, 876 insertions(+), 7 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/spectrum_port_range.c
 create mode 100755 tools/testing/selftests/drivers/net/mlxsw/port_range_occ.sh
 create mode 100644 tools/testing/selftests/drivers/net/mlxsw/port_range_scale.sh
 create mode 120000 tools/testing/selftests/drivers/net/mlxsw/spectrum-2/port_range_scale.sh
 create mode 100644 tools/testing/selftests/drivers/net/mlxsw/spectrum/port_range_scale.sh
 create mode 100755 tools/testing/selftests/net/forwarding/tc_flower_port_range.sh
Signature · 1 line
2.40.1