From: Dekel Peled Date: Wed, 22 Jan 2020 12:33:06 +0000 (+0200) Subject: net/mlx5: fix setting of port ID for egress rules X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=813f9bfa12c93737472f0eefe0e1a7d30502e532;p=dpdk.git net/mlx5: fix setting of port ID for egress rules Previous patch fixed the setting of port-id for eswitch rules, which are ingress only. This patch expands the fix, to support NIC rules as well, which can be ingress or egress. Fixes: ce777b147bf8 ("net/mlx5: fix E-Switch flow without port item") Cc: stable@dpdk.org Signed-off-by: Dekel Peled Acked-by: Ori Kam --- diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c index a32f0be803..c2900c5d0d 100644 --- a/drivers/net/mlx5/mlx5_flow_dv.c +++ b/drivers/net/mlx5/mlx5_flow_dv.c @@ -7602,13 +7602,13 @@ cnt_err: item_flags |= last_item; } /* - * In case of ingress traffic when E-Switch mode is enabled, - * we have two cases where we need to set the source port manually. + * When E-Switch mode is enabled, we have two cases where we need to + * set the source port manually. * The first one, is in case of Nic steering rule, and the second is * E-Switch rule where no port_id item was found. In both cases * the source port is set according the current port in use. */ - if ((attr->ingress && !(item_flags & MLX5_FLOW_ITEM_PORT_ID)) && + if (!(item_flags & MLX5_FLOW_ITEM_PORT_ID) && (priv->representor || priv->master)) { if (flow_dv_translate_item_port_id(dev, match_mask, match_value, NULL))