[PATCH net-next mlxsw 0/3] mlxsw: Enable MC-aware mode for mlxsw ports
petrm at mellanox.com
Tue Jul 31 20:34:42 AEST 2018
Due to an issue in Spectrum chips, when unicast traffic shares TC with
BUM traffic, and there is a congestion, the BUM traffic is not dropped
as it should. In order to give unicast traffic precedence over BUM
traffic, configure multicast-aware mode on all ports.
** Note ** I pieced the above from memory, guesswork and Onyx release
notes. I need to pass it by Matty, but for review of the code here, I
think it's good enough.
Under multicast-aware regime, when assigning traffic class to a packet,
the switch doesn't merely take the value prescribed by the QTCT
register. For BUM traffic, it instead assigns that value plus 8. That
limits the number of available TCs, but since mlxsw currently only uses
the lower eight anyway, it is no real loss.
The two TCs (UC and MC one) are then mapped to the same subgroup and
strictly prioritized so that UC traffic is preferred in case of
In patch #1, introduce a new register, QTCTM, which enables the
In patch #2, fix a typo in related code.
In patch #3, set up TCs and QTCTM to enable multicast-aware mode.
Petr Machata (3):
mlxsw: reg: Add QoS Switch Traffic Class Table is Multicast-Aware
mlxsw: spectrum: Fix a typo
mlxsw: spectrum: Configure MC-aware mode on mlxsw ports
drivers/net/ethernet/mellanox/mlxsw/reg.h | 37 ++++++++++++++++++++++++++
drivers/net/ethernet/mellanox/mlxsw/spectrum.c | 26 +++++++++++++++++-
2 files changed, 62 insertions(+), 1 deletion(-)
More information about the Linux-mlxsw