mlxsw: spectrum: Set minimum shaper on MC TCs
authorPetr Machata <petrm@mellanox.com>
Wed, 31 Oct 2018 09:56:44 +0000 (09:56 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 31 Oct 2018 19:56:58 +0000 (12:56 -0700)
commit0fe64023162aef123de2f1993ba13a35a786e1de
treeab0d7a698d6ae0b408409944061bffc5ac1435dd
parent8b931821aa04823e2e5df0ae93937baabbd23286
mlxsw: spectrum: Set minimum shaper on MC TCs

An MC-aware mode was introduced in commit 7b8195306694 ("mlxsw:
spectrum: Configure MC-aware mode on mlxsw ports"). In MC-aware mode,
BUM traffic gets a special treatment by being assigned to a separate set
of traffic classes 8..15. Pairs of TCs 0 and 8, 1 and 9, etc., are then
configured to strictly prioritize the lower-numbered ones. The intention
is to prevent BUM traffic from flooding the switch and push out all UC
traffic, which would otherwise happen, and instead give UC traffic
precedence.

However strictly prioritizing UC traffic has the effect that UC overload
pushes out all BUM traffic, such as legitimate ARP queries. These
packets are kept in queues for a while, but under sustained UC overload,
their lifetime eventually expires and these packets are dropped. That is
detrimental to network performance as well.

Therefore configure the MC TCs (8..15) with minimum shaper of 200Mbps (a
minimum permitted value) to allow a trickle of necessary control traffic
to get through.

Fixes: 7b8195306694 ("mlxsw: spectrum: Configure MC-aware mode on mlxsw ports")
Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlxsw/spectrum.c