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 <michae...@nvidia.com> Acked-by: Matan Azrad <ma...@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