[dpdk-dev] [PATCH V1 1/1] net/mlx5: support item type error message in flow Verbs

Raslan Darawsheh rasland at nvidia.com
Tue Oct 27 13:08:50 CET 2020


Hi,

> -----Original Message-----
> From: Li Zhang <lizh at nvidia.com>
> Sent: Monday, September 28, 2020 9:56 AM
> To: Dekel Peled <dekelp at nvidia.com>; Ori Kam <orika at nvidia.com>; Slava
> Ovsiienko <viacheslavo at nvidia.com>; Matan Azrad <matan at nvidia.com>
> Cc: dev at dpdk.org; NBU-Contact-Thomas Monjalon
> <thomas at monjalon.net>; Raslan Darawsheh <rasland at nvidia.com>
> Subject: [PATCH V1 1/1] net/mlx5: support item type error message in flow
> Verbs
> 
> Update the flow verbs error message to "item type X not supported",
> when it is not supported,
> instead of a generic error message "item not supported".
> 
> Signed-off-by: Li Zhang <lizh at nvidia.com>
> ---
>  drivers/net/mlx5/mlx5_flow_verbs.c | 11 ++++++++---
>  1 file changed, 8 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/net/mlx5/mlx5_flow_verbs.c
> b/drivers/net/mlx5/mlx5_flow_verbs.c
> index 62c18b834f..0e0042f17b 100644
> --- a/drivers/net/mlx5/mlx5_flow_verbs.c
> +++ b/drivers/net/mlx5/mlx5_flow_verbs.c
> @@ -1258,6 +1258,7 @@ flow_verbs_validate(struct rte_eth_dev *dev,
>  	uint64_t last_item = 0;
>  	uint8_t next_protocol = 0xff;
>  	uint16_t ether_type = 0;
> +	char errstr[32];
> 
>  	if (items == NULL)
>  		return -1;
> @@ -1408,9 +1409,11 @@ flow_verbs_validate(struct rte_eth_dev *dev,
>  			last_item = MLX5_FLOW_LAYER_MPLS;
>  			break;
>  		default:
> +			snprintf(errstr, sizeof(errstr), "item type %d not
> supported",
> +				 items->type);
>  			return rte_flow_error_set(error, ENOTSUP,
> 
> RTE_FLOW_ERROR_TYPE_ITEM,
> -						  NULL, "item not
> supported");
> +						  NULL, errstr);
>  		}
>  		item_flags |= last_item;
>  	}
> @@ -1704,6 +1707,7 @@ flow_verbs_translate(struct rte_eth_dev *dev,
>  	struct mlx5_flow_rss_desc *rss_desc = &((struct
> mlx5_flow_rss_desc *)
>  					      priv->rss_desc)
>  					      [!!priv->flow_nested_idx];
> +	char errstr[32];
> 
>  	if (priority == MLX5_FLOW_PRIO_RSVD)
>  		priority = priv->config.flow_prio - 1;
> @@ -1849,10 +1853,11 @@ flow_verbs_translate(struct rte_eth_dev *dev,
>  			item_flags |= MLX5_FLOW_LAYER_MPLS;
>  			break;
>  		default:
> +			snprintf(errstr, sizeof(errstr), "item type %d not
> supported",
> +				 items->type);
>  			return rte_flow_error_set(error, ENOTSUP,
> 
> RTE_FLOW_ERROR_TYPE_ITEM,
> -						  NULL,
> -						  "item not supported");
> +						  NULL, errstr);
>  		}
>  	}
>  	dev_flow->handle->layers = item_flags;
> --
> 2.21.0


Patch applied to next-net-mlx,

Kindest regards,
Raslan Darawsheh


More information about the dev mailing list