netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/5] mlxsw: Add support for RED qevent "mark"
@ 2021-01-17  8:02 Ido Schimmel
  2021-01-17  8:02 ` [PATCH net-next 1/5] devlink: Add ecn_mark trap Ido Schimmel
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: Ido Schimmel @ 2021-01-17  8:02 UTC (permalink / raw)
  To: netdev; +Cc: davem, kuba, petrm, jiri, amcohen, mlxsw, Ido Schimmel

From: Ido Schimmel <idosch@nvidia.com>

Petr says:

The RED qdisc currently supports two qevents: "early_drop" and "mark". The
filters added to the block bound to the "early_drop" qevent are executed on
packets for which the RED algorithm decides that they should be
early-dropped. The "mark" filters are similarly executed on ECT packets
that are marked as ECN-CE (Congestion Encountered).

A previous patchset has offloaded "early_drop" filters on Spectrum-2 and
later, provided that the classifier used is "matchall", that the action
used is either "trap" or "mirred", and a handful or further limitations.

This patchset similarly offloads "mark" filters.

Patch set overview:

Patches #1 and #2 add the trap, under which packets will be reported to the
CPU, if the qevent filter uses the action "trap".

Patch #3 then recognizes FLOW_BLOCK_BINDER_TYPE_RED_MARK as a binder type,
and offloads the attached filters similarly to _EARLY_DROP.

Patch #4 cleans up some unused variables in a selftest, and patch #5 adds a
new selftest for the RED "mark" qevent offload.

Petr Machata (5):
  devlink: Add ecn_mark trap
  mlxsw: spectrum_trap: Add ecn_mark trap
  mlxsw: spectrum_qdisc: Offload RED qevent mark
  selftests: mlxsw: sch_red_core: Drop two unused variables
  selftests: mlxsw: RED: Add selftests for the mark qevent

 .../networking/devlink/devlink-trap.rst       |  4 +
 .../net/ethernet/mellanox/mlxsw/spectrum.c    |  2 +
 .../net/ethernet/mellanox/mlxsw/spectrum.h    |  2 +
 .../ethernet/mellanox/mlxsw/spectrum_qdisc.c  | 14 +++-
 .../ethernet/mellanox/mlxsw/spectrum_span.c   | 16 ++++
 .../ethernet/mellanox/mlxsw/spectrum_span.h   |  1 +
 .../ethernet/mellanox/mlxsw/spectrum_trap.c   |  9 ++
 include/net/devlink.h                         |  3 +
 net/core/devlink.c                            |  1 +
 .../drivers/net/mlxsw/sch_red_core.sh         | 84 ++++++++++++++++++-
 .../drivers/net/mlxsw/sch_red_ets.sh          | 74 ++++++++++++++--
 11 files changed, 200 insertions(+), 10 deletions(-)

-- 
2.29.2


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

end of thread, other threads:[~2021-01-24  8:43 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-17  8:02 [PATCH net-next 0/5] mlxsw: Add support for RED qevent "mark" Ido Schimmel
2021-01-17  8:02 ` [PATCH net-next 1/5] devlink: Add ecn_mark trap Ido Schimmel
2021-01-17  8:02 ` [PATCH net-next 2/5] mlxsw: spectrum_trap: " Ido Schimmel
2021-01-17  8:02 ` [PATCH net-next 3/5] mlxsw: spectrum_qdisc: Offload RED qevent mark Ido Schimmel
2021-01-17  8:02 ` [PATCH net-next 4/5] selftests: mlxsw: sch_red_core: Drop two unused variables Ido Schimmel
2021-01-17  8:02 ` [PATCH net-next 5/5] selftests: mlxsw: RED: Add selftests for the mark qevent Ido Schimmel
2021-01-19 22:22 ` [PATCH net-next 0/5] mlxsw: Add support for RED qevent "mark" Jakub Kicinski
2021-01-20  9:14   ` Ido Schimmel
2021-01-21  0:45     ` Jakub Kicinski
2021-01-21 10:23       ` Ido Schimmel
2021-01-21 17:19         ` Jakub Kicinski
2021-01-23 15:28           ` Ido Schimmel
2021-01-23 19:55             ` Jakub Kicinski
2021-01-24  8:42               ` Ido Schimmel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).