diff options
author | Erez Shitrit <erezsh@nvidia.com> | 2023-08-28 14:37:12 +0300 |
---|---|---|
committer | Saeed Mahameed <saeedm@nvidia.com> | 2023-09-19 23:33:08 -0700 |
commit | 3b81bcbaee28213ba7e6061c523db918c594ad67 (patch) | |
tree | 7cdaa3ff6d551a2702e97da2cf4a49ed4366e2a3 /drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h | |
parent | f6f46e7173cb4613b84a0c0640355826ee39654f (diff) |
net/mlx5: DR, Handle multi destination action in the right order
Whenever we have few destinations from Flow-table type we need to put
the one that goes to the wire to be the last one.
We are using FW in order to get iterator, the FW uses RX for the first
destinations and TX for the last destination, if we want the packet to
be directed to the wire it should be done in the TX path and not in the
RX.
The code now checks if the FT is directed to the wire and if so puts it
as the last destination.
Signed-off-by: Erez Shitrit <erezsh@nvidia.com>
Reviewed-by: Moshe Shemesh <moshe@nvidia.com>
Reviewed-by: Yevgeny Kliteynik <kliteyn@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h')
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h b/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h index 6c59de3e28f6..55dc7383477c 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h +++ b/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h @@ -1064,6 +1064,7 @@ struct mlx5dr_action_sampler { struct mlx5dr_action_dest_tbl { u8 is_fw_tbl:1; + u8 is_wire_ft:1; union { struct mlx5dr_table *tbl; struct { |