DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core ver
@ 2019-11-26  8:34 Dekel Peled
  2019-11-26  9:21 ` Raslan Darawsheh
  2019-11-26 11:29 ` Ferruh Yigit
  0 siblings, 2 replies; 5+ messages in thread
From: Dekel Peled @ 2019-11-26  8:34 UTC (permalink / raw)
  To: matan, shahafs, viacheslavo; +Cc: orika, dev

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] http://patches.dpdk.org/patch/61900/

Fixes: cd4569d2bf3c ("net/mlx5: change default flow engine to DV")

Signed-off-by: Dekel Peled <dekelp@mellanox.com>
Acked-by: Ori Kam <orika@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


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core ver
  2019-11-26  8:34 [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core ver Dekel Peled
@ 2019-11-26  9:21 ` Raslan Darawsheh
  2019-11-26 11:29 ` Ferruh Yigit
  1 sibling, 0 replies; 5+ messages in thread
From: Raslan Darawsheh @ 2019-11-26  9:21 UTC (permalink / raw)
  To: Dekel Peled, Matan Azrad, Shahaf Shuler, Slava Ovsiienko; +Cc: Ori Kam, dev

Hi,

> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Dekel Peled
> Sent: Tuesday, November 26, 2019 10:34 AM
> To: Matan Azrad <matan@mellanox.com>; Shahaf Shuler
> <shahafs@mellanox.com>; Slava Ovsiienko <viacheslavo@mellanox.com>
> Cc: Ori Kam <orika@mellanox.com>; dev@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&amp;data=02%7C01%7Crasland%40mell
> anox.com%7Cdb36281e31894da1c6cf08d7724b90cb%7Ca652971c7d2e4d9ba6
> a4d149256f461b%7C0%7C0%7C637103541194195326&amp;sdata=aWt67T9fB
> Hliav7wUm1gFNHHmJh8jnWYqKNTCTA1D6Q%3D&amp;reserved=0
> 
> Fixes: cd4569d2bf3c ("net/mlx5: change default flow engine to DV")
> 
> Signed-off-by: Dekel Peled <dekelp@mellanox.com>
> Acked-by: Ori Kam <orika@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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core ver
  2019-11-26  8:34 [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core ver Dekel Peled
  2019-11-26  9:21 ` Raslan Darawsheh
@ 2019-11-26 11:29 ` Ferruh Yigit
  2019-11-26 12:48   ` Dekel Peled
  1 sibling, 1 reply; 5+ messages in thread
From: Ferruh Yigit @ 2019-11-26 11:29 UTC (permalink / raw)
  To: Dekel Peled, matan, shahafs, viacheslavo; +Cc: orika, dev

On 11/26/2019 8:34 AM, Dekel Peled wrote:
> 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] http://patches.dpdk.org/patch/61900/

Can you please add reference to the git commit instead of the patchwork, and I
assume the commit is the one ins the fixes line, so why to add additional
patchwork link too?

> 
> Fixes: cd4569d2bf3c ("net/mlx5: change default flow engine to DV")
> 
> Signed-off-by: Dekel Peled <dekelp@mellanox.com>
> Acked-by: Ori Kam <orika@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;
> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core ver
  2019-11-26 11:29 ` Ferruh Yigit
@ 2019-11-26 12:48   ` Dekel Peled
  2019-11-26 13:15     ` Ferruh Yigit
  0 siblings, 1 reply; 5+ messages in thread
From: Dekel Peled @ 2019-11-26 12:48 UTC (permalink / raw)
  To: Ferruh Yigit, Matan Azrad, Shahaf Shuler, Slava Ovsiienko; +Cc: Ori Kam, dev

Thanks, PSB

> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Tuesday, November 26, 2019 1:29 PM
> To: Dekel Peled <dekelp@mellanox.com>; Matan Azrad
> <matan@mellanox.com>; Shahaf Shuler <shahafs@mellanox.com>; Slava
> Ovsiienko <viacheslavo@mellanox.com>
> Cc: Ori Kam <orika@mellanox.com>; dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-
> core ver
> 
> On 11/26/2019 8:34 AM, Dekel Peled wrote:
> > 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&amp;data=02%7C01%7Cdekelp%40mell
> anox.co
> >
> m%7C38999818be02482ca83608d77263e1f3%7Ca652971c7d2e4d9ba6a4d1492
> 56f461
> >
> b%7C0%7C0%7C637103645640442451&amp;sdata=wytpQti4UM8l2xMxWRNl
> mx0oxnrxv
> > o2vWG6gwN8iAo8%3D&amp;reserved=0
> 
> Can you please add reference to the git commit instead of the patchwork,
> and I assume the commit is the one ins the fixes line, so why to add
> additional patchwork link too?
> 

I accept, the reference is redundant and can be removed.
Should I send v2? or can you remove it when taking the patch?

> >
> > Fixes: cd4569d2bf3c ("net/mlx5: change default flow engine to DV")
> >
> > Signed-off-by: Dekel Peled <dekelp@mellanox.com>
> > Acked-by: Ori Kam <orika@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;
> >


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core ver
  2019-11-26 12:48   ` Dekel Peled
@ 2019-11-26 13:15     ` Ferruh Yigit
  0 siblings, 0 replies; 5+ messages in thread
From: Ferruh Yigit @ 2019-11-26 13:15 UTC (permalink / raw)
  To: Dekel Peled, Matan Azrad, Shahaf Shuler, Slava Ovsiienko; +Cc: Ori Kam, dev

On 11/26/2019 12:48 PM, Dekel Peled wrote:
> Thanks, PSB
> 
>> -----Original Message-----
>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>> Sent: Tuesday, November 26, 2019 1:29 PM
>> To: Dekel Peled <dekelp@mellanox.com>; Matan Azrad
>> <matan@mellanox.com>; Shahaf Shuler <shahafs@mellanox.com>; Slava
>> Ovsiienko <viacheslavo@mellanox.com>
>> Cc: Ori Kam <orika@mellanox.com>; dev@dpdk.org
>> Subject: Re: [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-
>> core ver
>>
>> On 11/26/2019 8:34 AM, Dekel Peled wrote:
>>> 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&amp;data=02%7C01%7Cdekelp%40mell
>> anox.co
>>>
>> m%7C38999818be02482ca83608d77263e1f3%7Ca652971c7d2e4d9ba6a4d1492
>> 56f461
>>>
>> b%7C0%7C0%7C637103645640442451&amp;sdata=wytpQti4UM8l2xMxWRNl
>> mx0oxnrxv
>>> o2vWG6gwN8iAo8%3D&amp;reserved=0
>>
>> Can you please add reference to the git commit instead of the patchwork,
>> and I assume the commit is the one ins the fixes line, so why to add
>> additional patchwork link too?
>>
> 
> I accept, the reference is redundant and can be removed.
> Should I send v2? or can you remove it when taking the patch?

I updated in next-net, thanks.

> 
>>>
>>> Fixes: cd4569d2bf3c ("net/mlx5: change default flow engine to DV")
>>>
>>> Signed-off-by: Dekel Peled <dekelp@mellanox.com>
>>> Acked-by: Ori Kam <orika@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;
>>>
> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-11-26 13:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-26  8:34 [dpdk-dev] [PATCH] net/mlx5: fix flow engine select by rdma-core ver Dekel Peled
2019-11-26  9:21 ` Raslan Darawsheh
2019-11-26 11:29 ` Ferruh Yigit
2019-11-26 12:48   ` Dekel Peled
2019-11-26 13:15     ` Ferruh Yigit

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).