]> git.baikalelectronics.ru Git - kernel.git/commit
net/mlx5e: TC NIC mode, fix tc chains miss table
authorMaor Dickman <maord@nvidia.com>
Mon, 2 May 2022 07:51:30 +0000 (10:51 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 14 Jun 2022 16:36:12 +0000 (18:36 +0200)
commit7731f5fb960c5ca9e735f085a40eb4772ceae927
treef87916af2d648c7a98269ae46674e3e4761af70b
parent670d741d7522bc5a68c4644c6ae2465237500d96
net/mlx5e: TC NIC mode, fix tc chains miss table

[ Upstream commit b6bc51460ed1f8fae87a4b98fee774d46aa35d8e ]

The cited commit changed promisc table to be created on demand with the
highest priority in the NIC table replacing the vlan table, this caused
tc NIC tables miss flow to skip the prmoisc table because it use vlan
table as miss table.

OVS offload in NIC mode use promisc by default so any unicast packet
which will be handled by tc NIC tables miss flow will skip the promisc
rule and will be dropped.

Fix this by adding new empty table in new tc level with low priority and
point the nic tc chain miss to it, the new table is managed so it will
point to vlan table if promisc is disabled and to promisc table if enabled.

Fixes: d7b26610cfed ("net/mlx5e: Optimize promiscuous mode")
Signed-off-by: Maor Dickman <maord@nvidia.com>
Reviewed-by: Paul Blakey <paulb@nvidia.com>
Reviewed-by: Ariel Levkovich <lariel@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/en/fs.h
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c