mirror of https://gitee.com/openkylin/linux.git
net/mlx5: Consider encapsulation properties when comparing destinations
Currently the driver identifies identical vport destinations by comparing the vport ID. The FW extended destination feature enables the driver to forward the packet to the same vport with multiple encapsulation properties. Change the vport destination comparison logic to compare the encapsulation properties in addition to the vport ID. Signed-off-by: Eli Britstein <elibr@mellanox.com> Acked-by: Or Gerlitz <ogerlitz@mellanox.com> Reviewed-by: Oz Shlomo <ozsh@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
This commit is contained in:
parent
0bd72117fb
commit
1228e912c9
|
@ -1373,7 +1373,10 @@ static bool mlx5_flow_dests_cmp(struct mlx5_flow_destination *d1,
|
|||
{
|
||||
if (d1->type == d2->type) {
|
||||
if ((d1->type == MLX5_FLOW_DESTINATION_TYPE_VPORT &&
|
||||
d1->vport.num == d2->vport.num) ||
|
||||
d1->vport.num == d2->vport.num &&
|
||||
d1->vport.flags == d2->vport.flags &&
|
||||
((d1->vport.flags & MLX5_FLOW_DEST_VPORT_REFORMAT_ID) ?
|
||||
(d1->vport.reformat_id == d2->vport.reformat_id) : true)) ||
|
||||
(d1->type == MLX5_FLOW_DESTINATION_TYPE_FLOW_TABLE &&
|
||||
d1->ft == d2->ft) ||
|
||||
(d1->type == MLX5_FLOW_DESTINATION_TYPE_TIR &&
|
||||
|
|
Loading…
Reference in New Issue