DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour
@ 2021-07-21 15:58 Martin Havlik
  2021-07-21 15:58 ` [dpdk-dev] [PATCH 3/4] doc: update bonding mode 8023ad info Martin Havlik
  2021-07-21 18:16 ` [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour Stephen Hemminger
  0 siblings, 2 replies; 8+ messages in thread
From: Martin Havlik @ 2021-07-21 15:58 UTC (permalink / raw)
  To: xhavli56, Ori Kam, Ajit Khaparde, Thomas Monjalon,
	Andrew Rybchenko, Ferruh Yigit, Dekel Peled, Bing Zhao,
	Gregory Etelson, Eli Britstein, Alexander Kozyrev
  Cc: dev, Jan Viktorin

The ability to create RTE flow rules, depending on
port status, can and does differ between PMDs.
Now the doc reflects that.

Signed-off-by: Martin Havlik <xhavli56@stud.fit.vutbr.cz>
---
 doc/guides/prog_guide/rte_flow.rst | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst
index 2b42d5ec8c..2988e3328a 100644
--- a/doc/guides/prog_guide/rte_flow.rst
+++ b/doc/guides/prog_guide/rte_flow.rst
@@ -3097,6 +3097,10 @@ actually created and a handle returned.
                    const struct rte_flow_action *actions[],
                    struct rte_flow_error *error);
 
+The ability to create a flow rule may depend on the status (started/stopped)
+of the port for which the rule is being created. This behaviour is
+PMD specific. Seek relevant PMD documentation for details.
+
 Arguments:
 
 - ``port_id``: port identifier of Ethernet device.
-- 
2.27.0


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

* [dpdk-dev] [PATCH 3/4] doc: update bonding mode 8023ad info
  2021-07-21 15:58 [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour Martin Havlik
@ 2021-07-21 15:58 ` Martin Havlik
  2021-07-26  1:39   ` Min Hu (Connor)
  2021-07-21 18:16 ` [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour Stephen Hemminger
  1 sibling, 1 reply; 8+ messages in thread
From: Martin Havlik @ 2021-07-21 15:58 UTC (permalink / raw)
  To: xhavli56, Chas Williams, Min Hu (Connor),
	Ciara Power, Ajit Khaparde, Rosen Xu, Bruce Richardson
  Cc: dev, Jan Viktorin

Included info on dedicated queues and added related
note about issue on mlx5.

Signed-off-by: Martin Havlik <xhavli56@stud.fit.vutbr.cz>
---
 doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst b/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst
index 30c56cd375..19c65f314c 100644
--- a/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst
+++ b/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst
@@ -116,10 +116,18 @@ Currently the Link Bonding PMD library supports following modes of operation:
     #. Calls to ``rte_eth_tx_burst`` must have a buffer size of at least 2xN,
        where N is the number of slaves. This is a space required for LACP
        frames. Additionally LACP packets are included in the statistics, but
        they are not returned to the application.
 
+    This mode also supports enabling dedicated rx and tx queues for handling
+    LACP frames separately from fast application path, resulting in
+    a potential performance improvement.
+
+.. note::
+    Currently mlx5 doesn't work with enabled dedicated queues due to
+    an issue with RTE flow rule creation prior to port start.
+
 *   **Transmit Load Balancing (Mode 5):**
 
 .. figure:: img/bond-mode-5.*
 
    Transmit Load Balancing (Mode 5)
-- 
2.27.0


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

* Re: [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour
  2021-07-21 15:58 [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour Martin Havlik
  2021-07-21 15:58 ` [dpdk-dev] [PATCH 3/4] doc: update bonding mode 8023ad info Martin Havlik
@ 2021-07-21 18:16 ` Stephen Hemminger
  2021-07-22 10:33   ` Andrew Rybchenko
  2021-07-26  3:07   ` Ajit Khaparde
  1 sibling, 2 replies; 8+ messages in thread
From: Stephen Hemminger @ 2021-07-21 18:16 UTC (permalink / raw)
  To: Martin Havlik
  Cc: Ori Kam, Ajit Khaparde, Thomas Monjalon, Andrew Rybchenko,
	Ferruh Yigit, Dekel Peled, Bing Zhao, Gregory Etelson,
	Eli Britstein, Alexander Kozyrev, dev, Jan Viktorin

On Wed, 21 Jul 2021 17:58:14 +0200
Martin Havlik <xhavli56@stud.fit.vutbr.cz> wrote:

> The ability to create RTE flow rules, depending on
> port status, can and does differ between PMDs.
> Now the doc reflects that.
> 
> Signed-off-by: Martin Havlik <xhavli56@stud.fit.vutbr.cz>
> ---
>  doc/guides/prog_guide/rte_flow.rst | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst
> index 2b42d5ec8c..2988e3328a 100644
> --- a/doc/guides/prog_guide/rte_flow.rst
> +++ b/doc/guides/prog_guide/rte_flow.rst
> @@ -3097,6 +3097,10 @@ actually created and a handle returned.
>                     const struct rte_flow_action *actions[],
>                     struct rte_flow_error *error);
>  
> +The ability to create a flow rule may depend on the status (started/stopped)
> +of the port for which the rule is being created. This behaviour is
> +PMD specific. Seek relevant PMD documentation for details.

Any PMD specific behavior in DPDK is an anathema to application developers
and should be considered a design flaw!

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

* Re: [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour
  2021-07-21 18:16 ` [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour Stephen Hemminger
@ 2021-07-22 10:33   ` Andrew Rybchenko
  2021-07-26  3:07   ` Ajit Khaparde
  1 sibling, 0 replies; 8+ messages in thread
From: Andrew Rybchenko @ 2021-07-22 10:33 UTC (permalink / raw)
  To: Stephen Hemminger, Martin Havlik
  Cc: Ori Kam, Ajit Khaparde, Thomas Monjalon, Andrew Rybchenko,
	Ferruh Yigit, Dekel Peled, Bing Zhao, Gregory Etelson,
	Eli Britstein, Alexander Kozyrev, dev, Jan Viktorin

On 7/21/21 9:16 PM, Stephen Hemminger wrote:
> On Wed, 21 Jul 2021 17:58:14 +0200
> Martin Havlik <xhavli56@stud.fit.vutbr.cz> wrote:
> 
>> The ability to create RTE flow rules, depending on
>> port status, can and does differ between PMDs.
>> Now the doc reflects that.
>>
>> Signed-off-by: Martin Havlik <xhavli56@stud.fit.vutbr.cz>
>> ---
>>   doc/guides/prog_guide/rte_flow.rst | 4 ++++
>>   1 file changed, 4 insertions(+)
>>
>> diff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst
>> index 2b42d5ec8c..2988e3328a 100644
>> --- a/doc/guides/prog_guide/rte_flow.rst
>> +++ b/doc/guides/prog_guide/rte_flow.rst
>> @@ -3097,6 +3097,10 @@ actually created and a handle returned.
>>                      const struct rte_flow_action *actions[],
>>                      struct rte_flow_error *error);
>>   
>> +The ability to create a flow rule may depend on the status (started/stopped)
>> +of the port for which the rule is being created. This behaviour is
>> +PMD specific. Seek relevant PMD documentation for details.
> 
> Any PMD specific behavior in DPDK is an anathema to application developers
> and should be considered a design flaw!
> 

+1

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

* Re: [dpdk-dev] [PATCH 3/4] doc: update bonding mode 8023ad info
  2021-07-21 15:58 ` [dpdk-dev] [PATCH 3/4] doc: update bonding mode 8023ad info Martin Havlik
@ 2021-07-26  1:39   ` Min Hu (Connor)
  0 siblings, 0 replies; 8+ messages in thread
From: Min Hu (Connor) @ 2021-07-26  1:39 UTC (permalink / raw)
  To: Martin Havlik, Chas Williams, Ciara Power, Ajit Khaparde,
	Rosen Xu, Bruce Richardson
  Cc: dev, Jan Viktorin

Acked-by: Min Hu (Connor) <humin29@huawei.com>

在 2021/7/21 23:58, Martin Havlik 写道:
> Included info on dedicated queues and added related
> note about issue on mlx5.
> 
> Signed-off-by: Martin Havlik <xhavli56@stud.fit.vutbr.cz>
> ---
>   doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst | 8 ++++++++
>   1 file changed, 8 insertions(+)
> 
> diff --git a/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst b/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst
> index 30c56cd375..19c65f314c 100644
> --- a/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst
> +++ b/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst
> @@ -116,10 +116,18 @@ Currently the Link Bonding PMD library supports following modes of operation:
>       #. Calls to ``rte_eth_tx_burst`` must have a buffer size of at least 2xN,
>          where N is the number of slaves. This is a space required for LACP
>          frames. Additionally LACP packets are included in the statistics, but
>          they are not returned to the application.
>   
> +    This mode also supports enabling dedicated rx and tx queues for handling
> +    LACP frames separately from fast application path, resulting in
> +    a potential performance improvement.
> +
> +.. note::
> +    Currently mlx5 doesn't work with enabled dedicated queues due to
> +    an issue with RTE flow rule creation prior to port start.
> +
>   *   **Transmit Load Balancing (Mode 5):**
>   
>   .. figure:: img/bond-mode-5.*
>   
>      Transmit Load Balancing (Mode 5)
> 

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

* Re: [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour
  2021-07-21 18:16 ` [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour Stephen Hemminger
  2021-07-22 10:33   ` Andrew Rybchenko
@ 2021-07-26  3:07   ` Ajit Khaparde
  2021-07-26  6:46     ` Ori Kam
  1 sibling, 1 reply; 8+ messages in thread
From: Ajit Khaparde @ 2021-07-26  3:07 UTC (permalink / raw)
  To: Stephen Hemminger
  Cc: Martin Havlik, Ori Kam, Thomas Monjalon, Andrew Rybchenko,
	Ferruh Yigit, Dekel Peled, Bing Zhao, Gregory Etelson,
	Eli Britstein, Alexander Kozyrev, dpdk-dev, Jan Viktorin

[-- Attachment #1: Type: text/plain, Size: 1615 bytes --]

On Wed, Jul 21, 2021 at 11:16 AM Stephen Hemminger
<stephen@networkplumber.org> wrote:
>
> On Wed, 21 Jul 2021 17:58:14 +0200
> Martin Havlik <xhavli56@stud.fit.vutbr.cz> wrote:
>
> > The ability to create RTE flow rules, depending on
> > port status, can and does differ between PMDs.
> > Now the doc reflects that.
> >
> > Signed-off-by: Martin Havlik <xhavli56@stud.fit.vutbr.cz>
> > ---
> >  doc/guides/prog_guide/rte_flow.rst | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst
> > index 2b42d5ec8c..2988e3328a 100644
> > --- a/doc/guides/prog_guide/rte_flow.rst
> > +++ b/doc/guides/prog_guide/rte_flow.rst
> > @@ -3097,6 +3097,10 @@ actually created and a handle returned.
> >                     const struct rte_flow_action *actions[],
> >                     struct rte_flow_error *error);
> >
> > +The ability to create a flow rule may depend on the status (started/stopped)
> > +of the port for which the rule is being created. This behaviour is
> > +PMD specific. Seek relevant PMD documentation for details.
>
> Any PMD specific behavior in DPDK is an anathema to application developers
> and should be considered a design flaw!
But it is better to be clear about the behavior.
Drivers and their underlying devices may need certain resources to be
initialized before flows could be created. There may be some drivers
who do not need that.
Specifying ports to be started would cover both the cases.

Maybe then we can say that "some drivers may _not_ need the port to be
started. Check PMD specific documentation".

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

* Re: [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour
  2021-07-26  3:07   ` Ajit Khaparde
@ 2021-07-26  6:46     ` Ori Kam
  2021-07-26 14:52       ` Ajit Khaparde
  0 siblings, 1 reply; 8+ messages in thread
From: Ori Kam @ 2021-07-26  6:46 UTC (permalink / raw)
  To: Ajit Khaparde, Stephen Hemminger
  Cc: Martin Havlik, NBU-Contact-Thomas Monjalon, Andrew Rybchenko,
	Ferruh Yigit, Dekel Peled, Bing Zhao, Gregory Etelson,
	Eli Britstein, Alexander Kozyrev, dpdk-dev, Jan Viktorin

Hi

> -----Original Message-----
> From: Ajit Khaparde <ajit.khaparde@broadcom.com>
> Sent: Monday, July 26, 2021 6:07 AM
> 
> On Wed, Jul 21, 2021 at 11:16 AM Stephen Hemminger
> <stephen@networkplumber.org> wrote:
> >
> > On Wed, 21 Jul 2021 17:58:14 +0200
> > Martin Havlik <xhavli56@stud.fit.vutbr.cz> wrote:
> >
> > > The ability to create RTE flow rules, depending on
> > > port status, can and does differ between PMDs.
> > > Now the doc reflects that.
> > >
> > > Signed-off-by: Martin Havlik <xhavli56@stud.fit.vutbr.cz>
> > > ---
> > >  doc/guides/prog_guide/rte_flow.rst | 4 ++++
> > >  1 file changed, 4 insertions(+)
> > >
> > > diff --git a/doc/guides/prog_guide/rte_flow.rst
> b/doc/guides/prog_guide/rte_flow.rst
> > > index 2b42d5ec8c..2988e3328a 100644
> > > --- a/doc/guides/prog_guide/rte_flow.rst
> > > +++ b/doc/guides/prog_guide/rte_flow.rst
> > > @@ -3097,6 +3097,10 @@ actually created and a handle returned.
> > >                     const struct rte_flow_action *actions[],
> > >                     struct rte_flow_error *error);
> > >
> > > +The ability to create a flow rule may depend on the status
> (started/stopped)
> > > +of the port for which the rule is being created. This behaviour is
> > > +PMD specific. Seek relevant PMD documentation for details.
> >
> > Any PMD specific behavior in DPDK is an anathema to application
> developers
> > and should be considered a design flaw!
> But it is better to be clear about the behavior.
> Drivers and their underlying devices may need certain resources to be
> initialized before flows could be created. There may be some drivers
> who do not need that.
> Specifying ports to be started would cover both the cases.
> 
> Maybe then we can say that "some drivers may _not_ need the port to be
> started. Check PMD specific documentation".

I don't like the negative approach, if a driver doesn't have any issues with something
it doesn't need to say it support this, the driver may say if it wants to emphasize
but this shouldn't be the default.
I prefer the original suggestion, maybe we can add device cap for this, just like
if a the PMD allows modifying queues after start.

Best
Ori


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

* Re: [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour
  2021-07-26  6:46     ` Ori Kam
@ 2021-07-26 14:52       ` Ajit Khaparde
  0 siblings, 0 replies; 8+ messages in thread
From: Ajit Khaparde @ 2021-07-26 14:52 UTC (permalink / raw)
  To: Ori Kam
  Cc: Stephen Hemminger, Martin Havlik, NBU-Contact-Thomas Monjalon,
	Andrew Rybchenko, Ferruh Yigit, Dekel Peled, Bing Zhao,
	Gregory Etelson, Eli Britstein, Alexander Kozyrev, dpdk-dev,
	Jan Viktorin

[-- Attachment #1: Type: text/plain, Size: 2392 bytes --]

On Sun, Jul 25, 2021 at 11:46 PM Ori Kam <orika@nvidia.com> wrote:
>
> Hi
>
> > -----Original Message-----
> > From: Ajit Khaparde <ajit.khaparde@broadcom.com>
> > Sent: Monday, July 26, 2021 6:07 AM
> >
> > On Wed, Jul 21, 2021 at 11:16 AM Stephen Hemminger
> > <stephen@networkplumber.org> wrote:
> > >
> > > On Wed, 21 Jul 2021 17:58:14 +0200
> > > Martin Havlik <xhavli56@stud.fit.vutbr.cz> wrote:
> > >
> > > > The ability to create RTE flow rules, depending on
> > > > port status, can and does differ between PMDs.
> > > > Now the doc reflects that.
> > > >
> > > > Signed-off-by: Martin Havlik <xhavli56@stud.fit.vutbr.cz>
> > > > ---
> > > >  doc/guides/prog_guide/rte_flow.rst | 4 ++++
> > > >  1 file changed, 4 insertions(+)
> > > >
> > > > diff --git a/doc/guides/prog_guide/rte_flow.rst
> > b/doc/guides/prog_guide/rte_flow.rst
> > > > index 2b42d5ec8c..2988e3328a 100644
> > > > --- a/doc/guides/prog_guide/rte_flow.rst
> > > > +++ b/doc/guides/prog_guide/rte_flow.rst
> > > > @@ -3097,6 +3097,10 @@ actually created and a handle returned.
> > > >                     const struct rte_flow_action *actions[],
> > > >                     struct rte_flow_error *error);
> > > >
> > > > +The ability to create a flow rule may depend on the status
> > (started/stopped)
> > > > +of the port for which the rule is being created. This behaviour is
> > > > +PMD specific. Seek relevant PMD documentation for details.
> > >
> > > Any PMD specific behavior in DPDK is an anathema to application
> > developers
> > > and should be considered a design flaw!
> > But it is better to be clear about the behavior.
> > Drivers and their underlying devices may need certain resources to be
> > initialized before flows could be created. There may be some drivers
> > who do not need that.
> > Specifying ports to be started would cover both the cases.
> >
> > Maybe then we can say that "some drivers may _not_ need the port to be
> > started. Check PMD specific documentation".
>
> I don't like the negative approach, if a driver doesn't have any issues with something
> it doesn't need to say it support this, the driver may say if it wants to emphasize
> but this shouldn't be the default.
> I prefer the original suggestion, maybe we can add device cap for this, just like
> if a the PMD allows modifying queues after start.
+1.
Device cap should help tie this behavior.

>
> Best
> Ori
>

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

end of thread, other threads:[~2021-07-26 14:52 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-21 15:58 [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour Martin Havlik
2021-07-21 15:58 ` [dpdk-dev] [PATCH 3/4] doc: update bonding mode 8023ad info Martin Havlik
2021-07-26  1:39   ` Min Hu (Connor)
2021-07-21 18:16 ` [dpdk-dev] [PATCH 2/4] doc: specify RTE flow create behaviour Stephen Hemminger
2021-07-22 10:33   ` Andrew Rybchenko
2021-07-26  3:07   ` Ajit Khaparde
2021-07-26  6:46     ` Ori Kam
2021-07-26 14:52       ` Ajit Khaparde

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).