[v1,1/2] net/mlx5: fix Rx objects creator selection

Message ID 1600023922-14738-1-git-send-email-michaelba@nvidia.com (mailing list archive)
State Accepted, archived
Delegated to: Raslan Darawsheh
Headers
Series [v1,1/2] net/mlx5: fix Rx objects creator selection |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Michael Baum Sept. 13, 2020, 7:05 p.m. UTC
  There are 2 creators for Rx objects, DevX and Verbs.
There are supported DR versions when a DevX destination TIR flow action
creation cannot be supported, using this versions the TIR object should
be created by Verbs, what forces all the Rx objects to be created by
Verbs.

The selection of the Rx objects creator, wrongly, didn't take into
account the destination TIR action support what caused a failure in the
Rx flows creation.

Select Verbs creator when destination TIR action creation is not
supported by the DR version.

Fixes: 71dee7694a70 ("net/mlx5: separate Rx queue object creations")

Signed-off-by: Michael Baum <michaelba@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
---
 drivers/net/mlx5/linux/mlx5_os.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Raslan Darawsheh Sept. 15, 2020, 1:37 p.m. UTC | #1
Hi,

> -----Original Message-----
> From: Michael Baum <michaelba@nvidia.com>
> Sent: Sunday, September 13, 2020 10:05 PM
> To: dev@dpdk.org
> Cc: Matan Azrad <matan@nvidia.com>; Raslan Darawsheh
> <rasland@nvidia.com>; Slava Ovsiienko <viacheslavo@nvidia.com>
> Subject: [PATCH v1 1/2] net/mlx5: fix Rx objects creator selection
> 
> There are 2 creators for Rx objects, DevX and Verbs.
> There are supported DR versions when a DevX destination TIR flow action
> creation cannot be supported, using this versions the TIR object should
> be created by Verbs, what forces all the Rx objects to be created by
> Verbs.
> 
> The selection of the Rx objects creator, wrongly, didn't take into
> account the destination TIR action support what caused a failure in the
> Rx flows creation.
> 
> Select Verbs creator when destination TIR action creation is not
> supported by the DR version.
> 
> Fixes: 71dee7694a70 ("net/mlx5: separate Rx queue object creations")
> 
> Signed-off-by: Michael Baum <michaelba@nvidia.com>
> Acked-by: Matan Azrad <matan@nvidia.com>
> ---
>  drivers/net/mlx5/linux/mlx5_os.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/mlx5/linux/mlx5_os.c
> b/drivers/net/mlx5/linux/mlx5_os.c
> index 41db75e..0511a55 100644
> --- a/drivers/net/mlx5/linux/mlx5_os.c
> +++ b/drivers/net/mlx5/linux/mlx5_os.c
> @@ -1272,7 +1272,7 @@
>  			goto error;
>  		}
>  	}
> -	if (config->devx && config->dv_flow_en) {
> +	if (config->devx && config->dv_flow_en && config->dest_tir) {
>  		priv->obj_ops = devx_obj_ops;
>  		priv->obj_ops.drop_action_create =
> 
> 	ibv_obj_ops.drop_action_create;
> --
> 1.8.3.1

Series applied to next-net-mlx,

Kindest regards,
Raslan Darawsheh
  

Patch

diff --git a/drivers/net/mlx5/linux/mlx5_os.c b/drivers/net/mlx5/linux/mlx5_os.c
index 41db75e..0511a55 100644
--- a/drivers/net/mlx5/linux/mlx5_os.c
+++ b/drivers/net/mlx5/linux/mlx5_os.c
@@ -1272,7 +1272,7 @@ 
 			goto error;
 		}
 	}
-	if (config->devx && config->dv_flow_en) {
+	if (config->devx && config->dv_flow_en && config->dest_tir) {
 		priv->obj_ops = devx_obj_ops;
 		priv->obj_ops.drop_action_create =
 						ibv_obj_ops.drop_action_create;