net/iavf: fix adding multicast MAC address
[dpdk.git] / drivers / net / mlx5 / mlx5_flow_verbs.c
index f8edae1..276bcb5 100644 (file)
@@ -72,7 +72,7 @@ mlx5_flow_discover_priorities(struct rte_eth_dev *dev)
                },
        };
        struct ibv_flow *flow;
-       struct mlx5_hrxq *drop = mlx5_hrxq_drop_new(dev);
+       struct mlx5_hrxq *drop = mlx5_drop_action_create(dev);
        uint16_t vprio[] = { 8, 16 };
        int i;
        int priority = 0;
@@ -89,7 +89,7 @@ mlx5_flow_discover_priorities(struct rte_eth_dev *dev)
                claim_zero(mlx5_glue->destroy_flow(flow));
                priority = vprio[i];
        }
-       mlx5_hrxq_drop_release(dev);
+       mlx5_drop_action_destroy(dev);
        switch (priority) {
        case 8:
                priority = RTE_DIM(priority_map_3);
@@ -1312,10 +1312,11 @@ flow_verbs_validate(struct rte_eth_dev *dev,
                        }
                        break;
                case RTE_FLOW_ITEM_TYPE_IPV4:
-                       ret = mlx5_flow_validate_item_ipv4(items, item_flags,
-                                                          last_item,
-                                                          ether_type, NULL,
-                                                          error);
+                       ret = mlx5_flow_validate_item_ipv4
+                                               (items, item_flags,
+                                                last_item, ether_type, NULL,
+                                                MLX5_ITEM_RANGE_NOT_ACCEPTED,
+                                                error);
                        if (ret < 0)
                                return ret;
                        last_item = tunnel ? MLX5_FLOW_LAYER_INNER_L3_IPV4 :
@@ -1889,7 +1890,7 @@ flow_verbs_remove(struct rte_eth_dev *dev, struct rte_flow *flow)
                /* hrxq is union, don't touch it only the flag is set. */
                if (handle->rix_hrxq) {
                        if (handle->fate_action == MLX5_FLOW_FATE_DROP) {
-                               mlx5_hrxq_drop_release(dev);
+                               mlx5_drop_action_destroy(dev);
                                handle->rix_hrxq = 0;
                        } else if (handle->fate_action ==
                                   MLX5_FLOW_FATE_QUEUE) {
@@ -1965,7 +1966,7 @@ flow_verbs_apply(struct rte_eth_dev *dev, struct rte_flow *flow,
                dev_flow = &((struct mlx5_flow *)priv->inter_flows)[idx];
                handle = dev_flow->handle;
                if (handle->fate_action == MLX5_FLOW_FATE_DROP) {
-                       hrxq = mlx5_hrxq_drop_new(dev);
+                       hrxq = mlx5_drop_action_create(dev);
                        if (!hrxq) {
                                rte_flow_error_set
                                        (error, errno,
@@ -1986,7 +1987,7 @@ flow_verbs_apply(struct rte_eth_dev *dev, struct rte_flow *flow,
                                                 rss_desc->queue,
                                                 rss_desc->queue_num);
                        if (!hrxq_idx)
-                               hrxq_idx = priv->obj_ops->hrxq_new
+                               hrxq_idx = mlx5_hrxq_new
                                                (dev, rss_desc->key,
                                                 MLX5_RSS_HASH_KEY_LEN,
                                                 dev_flow->hash_fields,
@@ -1995,7 +1996,7 @@ flow_verbs_apply(struct rte_eth_dev *dev, struct rte_flow *flow,
                                                 !!(handle->layers &
                                                 MLX5_FLOW_LAYER_TUNNEL));
                        hrxq = mlx5_ipool_get(priv->sh->ipool[MLX5_IPOOL_HRXQ],
-                                        hrxq_idx);
+                                             hrxq_idx);
                        if (!hrxq) {
                                rte_flow_error_set
                                        (error, rte_errno,
@@ -2034,7 +2035,7 @@ error:
                /* hrxq is union, don't touch it only the flag is set. */
                if (handle->rix_hrxq) {
                        if (handle->fate_action == MLX5_FLOW_FATE_DROP) {
-                               mlx5_hrxq_drop_release(dev);
+                               mlx5_drop_action_destroy(dev);
                                handle->rix_hrxq = 0;
                        } else if (handle->fate_action ==
                                   MLX5_FLOW_FATE_QUEUE) {