[dpdk-stable] [dpdk-dev] [PATCH] net/mlx5: fix enum misusing for steering registers

Raslan Darawsheh rasland at mellanox.com
Wed Jul 22 17:30:47 CEST 2020


Hi,

> -----Original Message-----
> From: dev <dev-bounces at dpdk.org> On Behalf Of Michael Baum
> Sent: Tuesday, July 21, 2020 2:57 PM
> To: dev at dpdk.org
> Cc: Matan Azrad <matan at mellanox.com>; Slava Ovsiienko
> <viacheslavo at mellanox.com>; stable at dpdk.org
> Subject: [dpdk-dev] [PATCH] net/mlx5: fix enum misusing for steering
> registers
> 
> The mlx5_flow_action_copy_mreg structure contains a field called src
> type enum modify_reg, similarly the mlx5_rte_flow_item_tag field
> contains a field called id type enum modify_reg.
> The enum modify_reg variable represents different registers in the
> system and it also has a field called REG_NONE whose value is 0 which
> means that the register does not exist.
> 
> The flow_mreg_add_copy_action function sets a variable of struct
> mlx5_flow_action_copy_mreg type, and initializes the src field to be 0.
> similarly the flow_create_split_metadata function sets a variable of
> struct mlx5_rte_flow_item_tag type and initializes the id field to be 0.
> In both functions, they initialize a enum modify_reg type variable with
> an int type value while modify_reg has an appropriate field for that
> value (REG_NONE).
> 
> Replace assigning 0 with REG_NONE in both functions.
> 
> Fixes: dd3c774f6ffb ("net/mlx5: add metadata register copy table")
> Fixes: 71e254bc0294 ("net/mlx5: split Rx flows to provide metadata copy")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Michael Baum <michaelba at mellanox.com>
> Acked-by: Matan Azrad <matan at mellanox.com>
> ---
>  drivers/net/mlx5/mlx5_flow.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
> index b56bee4..aba8f41 100644
> --- a/drivers/net/mlx5/mlx5_flow.c
> +++ b/drivers/net/mlx5/mlx5_flow.c
> @@ -3011,7 +3011,7 @@ struct mlx5_flow_tunnel_info {
>  	};
>  	struct mlx5_flow_action_copy_mreg cp_mreg = {
>  		.dst = REG_B,
> -		.src = 0,
> +		.src = REG_NONE,
>  	};
>  	struct rte_flow_action_jump jump = {
>  		.group = MLX5_FLOW_MREG_ACT_TABLE_GROUP,
> @@ -4067,7 +4067,7 @@ struct mlx5_flow_tunnel_info {
>  		/* Internal PMD action to set register. */
>  		struct mlx5_rte_flow_item_tag q_tag_spec = {
>  			.data = qrss_id,
> -			.id = 0,
> +			.id = REG_NONE,
>  		};
>  		struct rte_flow_item q_items[] = {
>  			{
> --
> 1.8.3.1


Patch applied to next-net-mlx,

Kindest regards,
Raslan Darawsheh


More information about the stable mailing list