mlxsw: spectrum_buffers: Set up a dedicated pool for BUM traffic
authorPetr Machata <petrm@mellanox.com>
Wed, 5 Sep 2018 10:16:00 +0000 (12:16 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 5 Sep 2018 14:55:43 +0000 (07:55 -0700)
commit3a3539cd36327c6f9e0ffd9f3fd3dea7ff8b3567
treeb659bacfa8e2f40060d9b76e116cce992db99962
parent28619527b8a712590c93d0a9e24b4425b9376a8c
mlxsw: spectrum_buffers: Set up a dedicated pool for BUM traffic

MC-aware mode was recently enabled by mlxsw on Spectrum switches in
commit 7b8195306694 ("mlxsw: spectrum: Configure MC-aware mode on mlxsw
ports"). Unfortunately, testing has shown that the fix is incomplete and
in the presented form actually makes the problem even worse, because any
amount of MC traffic causes UC disruption.

The reason for this is that currently, mlxsw configures the MC-specific
TCs (8..15) to map to pool 0. It also configures a maximum buffer size
of 0, but for MC traffic that maximum is disregarded and not part of the
quota. Therefore MC traffic is always admitted to the egress buffer.

Fix the configuration by directing the MC TCs into pool 15, which is
dedicated to MC traffic and recognized as such by the silicon.

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