[dpdk-dev,v2] doc: update mlx5 flow count limitations

Message ID 1508142759-24829-1-git-send-email-orika@mellanox.com (mailing list archive)
State Superseded, archived
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Ori Kam Oct. 16, 2017, 8:32 a.m. UTC
  Signed-off-by: Ori Kam <orika@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
---
 doc/guides/nics/mlx5.rst |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
  

Comments

Nélio Laranjeiro Oct. 16, 2017, 11:17 a.m. UTC | #1
On Mon, Oct 16, 2017 at 11:32:39AM +0300, Ori Kam wrote:
> Signed-off-by: Ori Kam <orika@mellanox.com>
> Acked-by: Shahaf Shuler <shahafs@mellanox.com>
> ---
>  doc/guides/nics/mlx5.rst |    5 ++++-
>  1 files changed, 4 insertions(+), 1 deletions(-)
> 
> diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst
> index d24941a..7da5c87 100644
> --- a/doc/guides/nics/mlx5.rst
> +++ b/doc/guides/nics/mlx5.rst
> @@ -104,7 +104,8 @@ Limitations
>  -----------
>  
>  - Inner RSS for VXLAN frames is not supported yet.
> -- Port statistics through software counters only.
> +- Port statistics through software counters only. Flow statistics are
> +  supported by hardware counters.
>  - Hardware checksum RX offloads for VXLAN inner header are not supported yet.
>  - Forked secondary process not supported.
>  - Flow pattern without any specific vlan will match for vlan packets as well:
> @@ -127,6 +128,8 @@ Limitations
>  - A multi segment packet must have less than 6 segments in case the Tx burst function
>    is set to multi-packet send or Enhanced multi-packet send. Otherwise it must have
>    less than 50 segments.
> +- Count action for RTE flow is only supported in OFED 4.2.
> +- Two identical rules with count action are not supported.

This last line does not bring anything, having two identical rules
already create a collision which is not defined by the flow API.
In PMD situation is is even worse, as it will match both rules and
thus it will duplicate a packet.

There is no need to add a limit on an undefined behavior by the
API itself.

Thanks,

PS: when you send a new revision, please use the --thread and
--in-reply-to to link it with the previous one.
  
Ori Kam Oct. 16, 2017, 11:31 a.m. UTC | #2
Please see my comments,

> -----Original Message-----
> From: Nélio Laranjeiro [mailto:nelio.laranjeiro@6wind.com]
> Sent: Monday, October 16, 2017 2:18 PM
> To: Ori Kam <orika@mellanox.com>
> Cc: Adrien Mazarguil <adrien.mazarguil@6wind.com>; Yongseok Koh
> <yskoh@mellanox.com>; dev@dpdk.org
> Subject: Re: [PATCH v2] doc: update mlx5 flow count limitations
> 
> On Mon, Oct 16, 2017 at 11:32:39AM +0300, Ori Kam wrote:
> > Signed-off-by: Ori Kam <orika@mellanox.com>
> > Acked-by: Shahaf Shuler <shahafs@mellanox.com>
> > ---
> >  doc/guides/nics/mlx5.rst |    5 ++++-
> >  1 files changed, 4 insertions(+), 1 deletions(-)
> >
> > diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst index
> > d24941a..7da5c87 100644
> > --- a/doc/guides/nics/mlx5.rst
> > +++ b/doc/guides/nics/mlx5.rst
> > @@ -104,7 +104,8 @@ Limitations
> >  -----------
> >
> >  - Inner RSS for VXLAN frames is not supported yet.
> > -- Port statistics through software counters only.
> > +- Port statistics through software counters only. Flow statistics are
> > +  supported by hardware counters.
> >  - Hardware checksum RX offloads for VXLAN inner header are not
> supported yet.
> >  - Forked secondary process not supported.
> >  - Flow pattern without any specific vlan will match for vlan packets as well:
> > @@ -127,6 +128,8 @@ Limitations
> >  - A multi segment packet must have less than 6 segments in case the Tx
> burst function
> >    is set to multi-packet send or Enhanced multi-packet send. Otherwise it
> must have
> >    less than 50 segments.
> > +- Count action for RTE flow is only supported in OFED 4.2.
> > +- Two identical rules with count action are not supported.
> 
> This last line does not bring anything, having two identical rules already
> create a collision which is not defined by the flow API.
> In PMD situation is is even worse, as it will match both rules and thus it will
> duplicate a packet.
> 
> There is no need to add a limit on an undefined behavior by the API itself.
> 

The thing is that when you try adding duplicate rules without the count it works
without any error while if you add the count action then for the second rule you get an error.
This line address this inconsistency.

> Thanks,
> 
> PS: when you send a new revision, please use the --thread and --in-reply-to
> to link it with the previous one.
> 


My bad,

> --
> Nélio Laranjeiro
> 6WIND

Regards,
Ori Kam
  
Nélio Laranjeiro Oct. 16, 2017, 12:36 p.m. UTC | #3
On Mon, Oct 16, 2017 at 11:31:32AM +0000, Ori Kam wrote:
> Please see my comments,
> 
> > -----Original Message-----
> > From: Nélio Laranjeiro [mailto:nelio.laranjeiro@6wind.com]
> > Sent: Monday, October 16, 2017 2:18 PM
> > To: Ori Kam <orika@mellanox.com>
> > Cc: Adrien Mazarguil <adrien.mazarguil@6wind.com>; Yongseok Koh
> > <yskoh@mellanox.com>; dev@dpdk.org
> > Subject: Re: [PATCH v2] doc: update mlx5 flow count limitations
> > 
> > On Mon, Oct 16, 2017 at 11:32:39AM +0300, Ori Kam wrote:
> > > Signed-off-by: Ori Kam <orika@mellanox.com>
> > > Acked-by: Shahaf Shuler <shahafs@mellanox.com>
> > > ---
> > >  doc/guides/nics/mlx5.rst |    5 ++++-
> > >  1 files changed, 4 insertions(+), 1 deletions(-)
> > >
> > > diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst index
> > > d24941a..7da5c87 100644
> > > --- a/doc/guides/nics/mlx5.rst
> > > +++ b/doc/guides/nics/mlx5.rst
> > > @@ -104,7 +104,8 @@ Limitations
> > >  -----------
> > >
> > >  - Inner RSS for VXLAN frames is not supported yet.
> > > -- Port statistics through software counters only.
> > > +- Port statistics through software counters only. Flow statistics are
> > > +  supported by hardware counters.
> > >  - Hardware checksum RX offloads for VXLAN inner header are not
> > supported yet.
> > >  - Forked secondary process not supported.
> > >  - Flow pattern without any specific vlan will match for vlan packets as well:
> > > @@ -127,6 +128,8 @@ Limitations
> > >  - A multi segment packet must have less than 6 segments in case the Tx
> > burst function
> > >    is set to multi-packet send or Enhanced multi-packet send. Otherwise it
> > must have
> > >    less than 50 segments.
> > > +- Count action for RTE flow is only supported in OFED 4.2.
> > > +- Two identical rules with count action are not supported.
> > 
> > This last line does not bring anything, having two identical rules already
> > create a collision which is not defined by the flow API.
> > In PMD situation is is even worse, as it will match both rules and thus it will
> > duplicate a packet.
> > 
> > There is no need to add a limit on an undefined behavior by the API itself.
> > 
> 
> The thing is that when you try adding duplicate rules without the count it works
> without any error while if you add the count action then for the second rule you get an error.
> This line address this inconsistency.

According to Flow API documentation [1]

"If a packet is matched by several rules of a given group for a given
priority level, the outcome is undefined. It can take any path, may be
duplicated or even cause unrecoverable errors."

This is already documented and application makers should avoid it.
There is no need to duplicate this information.

> > Thanks,
> > 
> > PS: when you send a new revision, please use the --thread and --in-reply-to
> > to link it with the previous one.
> > 
> 
> 
> My bad,
> 
> > --
> > Nélio Laranjeiro
> > 6WIND
> 
> Regards,
> Ori Kam

Thanks,

[1] http://dpdk.org/doc/guides/prog_guide/rte_flow.html
  
Ori Kam Oct. 16, 2017, 1:25 p.m. UTC | #4
> -----Original Message-----
> From: Nélio Laranjeiro [mailto:nelio.laranjeiro@6wind.com]
> Sent: Monday, October 16, 2017 3:36 PM
> To: Ori Kam <orika@mellanox.com>
> Cc: Adrien Mazarguil <adrien.mazarguil@6wind.com>; Yongseok Koh
> <yskoh@mellanox.com>; dev@dpdk.org
> Subject: Re: [PATCH v2] doc: update mlx5 flow count limitations
> 
> On Mon, Oct 16, 2017 at 11:31:32AM +0000, Ori Kam wrote:
> > Please see my comments,
> >
> > > -----Original Message-----
> > > From: Nélio Laranjeiro [mailto:nelio.laranjeiro@6wind.com]
> > > Sent: Monday, October 16, 2017 2:18 PM
> > > To: Ori Kam <orika@mellanox.com>
> > > Cc: Adrien Mazarguil <adrien.mazarguil@6wind.com>; Yongseok Koh
> > > <yskoh@mellanox.com>; dev@dpdk.org
> > > Subject: Re: [PATCH v2] doc: update mlx5 flow count limitations
> > >
> > > On Mon, Oct 16, 2017 at 11:32:39AM +0300, Ori Kam wrote:
> > > > Signed-off-by: Ori Kam <orika@mellanox.com>
> > > > Acked-by: Shahaf Shuler <shahafs@mellanox.com>
> > > > ---
> > > >  doc/guides/nics/mlx5.rst |    5 ++++-
> > > >  1 files changed, 4 insertions(+), 1 deletions(-)
> > > >
> > > > diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst
> > > > index
> > > > d24941a..7da5c87 100644
> > > > --- a/doc/guides/nics/mlx5.rst
> > > > +++ b/doc/guides/nics/mlx5.rst
> > > > @@ -104,7 +104,8 @@ Limitations
> > > >  -----------
> > > >
> > > >  - Inner RSS for VXLAN frames is not supported yet.
> > > > -- Port statistics through software counters only.
> > > > +- Port statistics through software counters only. Flow statistics
> > > > +are
> > > > +  supported by hardware counters.
> > > >  - Hardware checksum RX offloads for VXLAN inner header are not
> > > supported yet.
> > > >  - Forked secondary process not supported.
> > > >  - Flow pattern without any specific vlan will match for vlan packets as
> well:
> > > > @@ -127,6 +128,8 @@ Limitations
> > > >  - A multi segment packet must have less than 6 segments in case
> > > > the Tx
> > > burst function
> > > >    is set to multi-packet send or Enhanced multi-packet send.
> > > > Otherwise it
> > > must have
> > > >    less than 50 segments.
> > > > +- Count action for RTE flow is only supported in OFED 4.2.
> > > > +- Two identical rules with count action are not supported.
> > >
> > > This last line does not bring anything, having two identical rules
> > > already create a collision which is not defined by the flow API.
> > > In PMD situation is is even worse, as it will match both rules and
> > > thus it will duplicate a packet.
> > >
> > > There is no need to add a limit on an undefined behavior by the API itself.
> > >
> >
> > The thing is that when you try adding duplicate rules without the
> > count it works without any error while if you add the count action then for
> the second rule you get an error.
> > This line address this inconsistency.
> 
> According to Flow API documentation [1]
> 
> "If a packet is matched by several rules of a given group for a given priority
> level, the outcome is undefined. It can take any path, may be duplicated or
> even cause unrecoverable errors."
> 
> This is already documented and application makers should avoid it.
> There is no need to duplicate this information.
> 

Will fix in version 3.

> > > Thanks,
> > >
> > > PS: when you send a new revision, please use the --thread and
> > > --in-reply-to to link it with the previous one.
> > >
> >
> >
> > My bad,
> >
> > > --
> > > Nélio Laranjeiro
> > > 6WIND
> >
> > Regards,
> > Ori Kam
> 
> Thanks,
> 
> [1]
> https://emea01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdpd
> k.org%2Fdoc%2Fguides%2Fprog_guide%2Frte_flow.html&data=02%7C01%7
> Corika%40mellanox.com%7Ccc884d2a17c641d6388b08d51492886c%7Ca65297
> 1c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C636437541948539609&sdata=fh
> 67Sys0ZaabU6hmpv5uo%2BgfXlRe2eDjTn65MUVO7IU%3D&reserved=0
> 
> --
> Nélio Laranjeiro
> 6WIND

Regards,
Ori Kam
  

Patch

diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst
index d24941a..7da5c87 100644
--- a/doc/guides/nics/mlx5.rst
+++ b/doc/guides/nics/mlx5.rst
@@ -104,7 +104,8 @@  Limitations
 -----------
 
 - Inner RSS for VXLAN frames is not supported yet.
-- Port statistics through software counters only.
+- Port statistics through software counters only. Flow statistics are
+  supported by hardware counters.
 - Hardware checksum RX offloads for VXLAN inner header are not supported yet.
 - Forked secondary process not supported.
 - Flow pattern without any specific vlan will match for vlan packets as well:
@@ -127,6 +128,8 @@  Limitations
 - A multi segment packet must have less than 6 segments in case the Tx burst function
   is set to multi-packet send or Enhanced multi-packet send. Otherwise it must have
   less than 50 segments.
+- Count action for RTE flow is only supported in OFED 4.2.
+- Two identical rules with count action are not supported.
 
 Configuration
 -------------