aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorGravatar Eli Cohen <eli@mellanox.com> 2020-01-14 17:30:41 +0200
committerGravatar Saeed Mahameed <saeedm@mellanox.com> 2020-02-27 16:40:05 -0800
commit96e326878fa5e2727d14e9a23644119374619010 (patch)
tree29479cf051c89e63ae21517e2f7ea054541417c5 /include
parentnet/mlx5: Eswitch, avoid redundant mask (diff)
downloadlinux-96e326878fa5e2727d14e9a23644119374619010.tar.gz
linux-96e326878fa5e2727d14e9a23644119374619010.tar.bz2
linux-96e326878fa5e2727d14e9a23644119374619010.zip
net/mlx5e: Eswitch, Use per vport tables for mirroring
When using port mirroring, we forward the traffic to another table and use that table to forward to the mirrored vport. Since the hardware loses the values of reg c, and in particular reg c0, we fail the match on the input vport which previously existed in reg c0. To overcome this situation, we use a set of per vport tables, positioned at the lowest priority, and forward traffic to those tables. Since these tables are per vport, we can avoid matching on reg c0. Fixes: c01cfd0f1115 ("net/mlx5: E-Switch, Add match on vport metadata for rule in fast path") Signed-off-by: Eli Cohen <eli@mellanox.com> Reviewed-by: Mark Bloch <markb@mellanox.com> Reviewed-by: Paul Blakey <paulb@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mlx5/fs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/mlx5/fs.h b/include/linux/mlx5/fs.h
index 4cae16016b2b..a5cf5c76f348 100644
--- a/include/linux/mlx5/fs.h
+++ b/include/linux/mlx5/fs.h
@@ -84,6 +84,7 @@ enum {
FDB_TC_OFFLOAD,
FDB_FT_OFFLOAD,
FDB_SLOW_PATH,
+ FDB_PER_VPORT,
};
struct mlx5_pkt_reformat;