[dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core ver

Raslan Darawsheh rasland at mellanox.com
Tue Nov 26 10:21:02 CET 2019


Hi,

> -----Original Message-----
> From: dev <dev-bounces at dpdk.org> On Behalf Of Dekel Peled
> Sent: Tuesday, November 26, 2019 10:34 AM
> To: Matan Azrad <matan at mellanox.com>; Shahaf Shuler
> <shahafs at mellanox.com>; Slava Ovsiienko <viacheslavo at mellanox.com>
> Cc: Ori Kam <orika at mellanox.com>; dev at dpdk.org
> Subject: [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core
> ver
> 
> Recent patch [1] sets the DV (Direct Verbs) flow engine as default.
> Newer versions of DV flow engine use the DR (Direct Rules) features.
> DR is supported from RDMA Core library version rdma-core-24.0.
> This cause failure to start port when using older rdma-core version,
> without DR support.
> 
> This patch selects DV flow engine if rdma-core version is v24.0 or
> higher. Verbs flow engine is selected otherwise.
> 
> [1]
> https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatch
> es.dpdk.org%2Fpatch%2F61900%2F&data=02%7C01%7Crasland%40mell
> anox.com%7Cdb36281e31894da1c6cf08d7724b90cb%7Ca652971c7d2e4d9ba6
> a4d149256f461b%7C0%7C0%7C637103541194195326&sdata=aWt67T9fB
> Hliav7wUm1gFNHHmJh8jnWYqKNTCTA1D6Q%3D&reserved=0
> 
> Fixes: cd4569d2bf3c ("net/mlx5: change default flow engine to DV")
> 
> Signed-off-by: Dekel Peled <dekelp at mellanox.com>
> Acked-by: Ori Kam <orika at mellanox.com>
> ---
>  doc/guides/nics/mlx5.rst               | 2 +-
>  doc/guides/rel_notes/release_19_11.rst | 3 +++
>  drivers/net/mlx5/mlx5.c                | 2 +-
>  3 files changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst
> index 2080766..771970f 100644
> --- a/doc/guides/nics/mlx5.rst
> +++ b/doc/guides/nics/mlx5.rst
> @@ -673,7 +673,7 @@ Run-time configuration
>  - ``dv_flow_en`` parameter [int]
> 
>    A nonzero value enables the DV flow steering assuming it is supported
> -  by the driver.
> +  by the driver (RDMA Core library version is rdma-core-24.0 or higher).
> 
>    Enabled by default if supported.
> 
> diff --git a/doc/guides/rel_notes/release_19_11.rst
> b/doc/guides/rel_notes/release_19_11.rst
> index 48c80e5..928698e 100644
> --- a/doc/guides/rel_notes/release_19_11.rst
> +++ b/doc/guides/rel_notes/release_19_11.rst
> @@ -193,6 +193,9 @@ New Features
>    * Added support for matching on packets withe Geneve tunnel header.
>    * Added hairpin support.
>    * Added ConnectX6-DX support.
> +  * Flow engine selected based on RDMA Core library version.
> +    DV flow engine selected if version is rdma-core-24.0 or higher.
> +    Verbs flow engine selected otherwise.
> 
>  * **Updated the AF_XDP PMD.**
> 
> diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c
> index 59ae408..8abd1b1 100644
> --- a/drivers/net/mlx5/mlx5.c
> +++ b/drivers/net/mlx5/mlx5.c
> @@ -2428,7 +2428,7 @@ struct mlx5_flow_id_pool *
>  	!defined(HAVE_IBV_DEVICE_COUNTERS_SET_V45)
>  	DRV_LOG(DEBUG, "counters are not supported");
>  #endif
> -#ifndef HAVE_IBV_FLOW_DV_SUPPORT
> +#if !defined(HAVE_IBV_FLOW_DV_SUPPORT) ||
> !defined(HAVE_MLX5DV_DR)
>  	if (config.dv_flow_en) {
>  		DRV_LOG(WARNING, "DV flow is not supported");
>  		config.dv_flow_en = 0;
> --
> 1.8.3.1


Patch applied to next-net-mlx,

Kindest regards,
Raslan Darawsheh


More information about the dev mailing list