net/mlx5: fix flow pattern VLAN validation
authorNélio Laranjeiro <nelio.laranjeiro@6wind.com>
Fri, 27 Jan 2017 15:35:19 +0000 (16:35 +0100)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 30 Jan 2017 21:18:27 +0000 (22:18 +0100)
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>
drivers/net/mlx5/mlx5_flow.c

index 7b97a61..d805c0a 100644 (file)
@@ -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;