[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210117080223.2107288-1-idosch@idosch.org>
Date: Sun, 17 Jan 2021 10:02:18 +0200
From: Ido Schimmel <idosch@...sch.org>
To: netdev@...r.kernel.org
Cc: davem@...emloft.net, kuba@...nel.org, petrm@...dia.com,
jiri@...dia.com, amcohen@...dia.com, mlxsw@...dia.com,
Ido Schimmel <idosch@...dia.com>
Subject: [PATCH net-next 0/5] mlxsw: Add support for RED qevent "mark"
From: Ido Schimmel <idosch@...dia.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
Powered by blists - more mailing lists