From: NĂ©lio Laranjeiro <nelio.laranjeiro@6wind.com>
Date: Fri, 27 Jan 2017 15:35:19 +0000 (+0100)
Subject: net/mlx5: fix flow pattern VLAN validation
X-Git-Tag: spdx-start~4593
X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=e74ac669847982129a555834217c2a412eac32e6;p=dpdk.git

net/mlx5: fix flow pattern VLAN validation

TCI field is read from the wrong place due to an invalid cast. Moreover
there is no need to limit matching to VID since PCP and DEI bits can be
matched as well.

Fixes: 12475fb203ad ("net/mlx5: support VLAN flow item")

Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
---

diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
index 7b97a610ee..d805c0aa8f 100644
--- a/drivers/net/mlx5/mlx5_flow.c
+++ b/drivers/net/mlx5/mlx5_flow.c
@@ -410,17 +410,6 @@ priv_flow_validate(struct priv *priv,
 
 		if (items->type == RTE_FLOW_ITEM_TYPE_VOID)
 			continue;
-		/* Handle special situation for VLAN. */
-		if (items->type == RTE_FLOW_ITEM_TYPE_VLAN) {
-			if (((const struct rte_flow_item_vlan *)items)->tci >
-			    ETHER_MAX_VLAN_ID) {
-				rte_flow_error_set(error, ENOTSUP,
-						   RTE_FLOW_ERROR_TYPE_ITEM,
-						   items,
-						   "wrong VLAN id value");
-				return -rte_errno;
-			}
-		}
 		for (i = 0;
 		     cur_item->items &&
 		     cur_item->items[i] != RTE_FLOW_ITEM_TYPE_END;