DPDK patches and discussions
 help / color / mirror / Atom feed
From: Chas Williams <3chas3@gmail.com>
To: Radu Nicolau <radu.nicolau@intel.com>
Cc: dev@dpdk.org, Declan Doherty <declan.doherty@intel.com>,
	Chas Williams <chas3@att.com>
Subject: Re: [dpdk-dev] [PATCH] net/bonding: propagate promiscous mode in mode 4
Date: Wed, 1 Aug 2018 09:34:39 -0400	[thread overview]
Message-ID: <CAG2-GknPmLqRG_RV+=R3WMYL8hnTff5fo63rk2nPGd4r2CzVJg@mail.gmail.com> (raw)
In-Reply-To: <1533128278-4685-1-git-send-email-radu.nicolau@intel.com>

On Wed, Aug 1, 2018 at 9:04 AM Radu Nicolau <radu.nicolau@intel.com> wrote:

> Update the bonding promiscuous mode enable/disable functions as to
> propagate the change to all slaves instead of doing nothing; this
> seems to be the correct behaviour according to the standard,
> and also implemented in the linux network stack.
>
> Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
> ---
>  drivers/net/bonding/rte_eth_bond_pmd.c | 8 ++------
>  1 file changed, 2 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c
> b/drivers/net/bonding/rte_eth_bond_pmd.c
> index ad6e33f..16105cb 100644
> --- a/drivers/net/bonding/rte_eth_bond_pmd.c
> +++ b/drivers/net/bonding/rte_eth_bond_pmd.c
> @@ -2617,12 +2617,10 @@ bond_ethdev_promiscuous_enable(struct rte_eth_dev
> *eth_dev)
>         case BONDING_MODE_ROUND_ROBIN:
>         case BONDING_MODE_BALANCE:
>         case BONDING_MODE_BROADCAST:
> +       case BONDING_MODE_8023AD:
>                 for (i = 0; i < internals->slave_count; i++)
>
> rte_eth_promiscuous_enable(internals->slaves[i].port_id);
>                 break;
> -       /* In mode4 promiscus mode is managed when slave is added/removed
> */
>

This comment is true (and it appears it is always on in 802.3ad mode):

        /* use this port as agregator */
        port->aggregator_port_id = slave_id;
        rte_eth_promiscuous_enable(slave_id);

If we are going to do this here, we should probably get rid of it in
the other location so that future readers aren't confused about which
is the one doing the work.

Since some adapters don't have group multicast support, we might
already be in promiscuous anyway.  Turning off promiscuous for
the bonding master might turn it off in the slaves where an application
has already enabled it.


> -       case BONDING_MODE_8023AD:
> -               break;
>         /* Promiscuous mode is propagated only to primary slave */
>         case BONDING_MODE_ACTIVE_BACKUP:
>         case BONDING_MODE_TLB:
> @@ -2645,12 +2643,10 @@ bond_ethdev_promiscuous_disable(struct rte_eth_dev
> *dev)
>         case BONDING_MODE_ROUND_ROBIN:
>         case BONDING_MODE_BALANCE:
>         case BONDING_MODE_BROADCAST:
> +       case BONDING_MODE_8023AD:
>                 for (i = 0; i < internals->slave_count; i++)
>
> rte_eth_promiscuous_disable(internals->slaves[i].port_id);
>                 break;
> -       /* In mode4 promiscus mode is set managed when slave is
> added/removed */
> -       case BONDING_MODE_8023AD:
> -               break;
>         /* Promiscuous mode is propagated only to primary slave */
>         case BONDING_MODE_ACTIVE_BACKUP:
>         case BONDING_MODE_TLB:
> --
> 2.7.5
>
>

  reply	other threads:[~2018-08-01 13:34 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-01 12:57 Radu Nicolau
2018-08-01 13:34 ` Chas Williams [this message]
2018-08-01 13:47   ` Radu Nicolau
2018-08-01 15:35     ` Chas Williams
2018-08-02  6:35       ` Matan Azrad
2018-08-02 13:23         ` Doherty, Declan
2018-08-02 14:24           ` Matan Azrad
2018-08-02 15:53             ` Doherty, Declan
2018-08-02 17:33               ` Matan Azrad
2018-08-02 21:10                 ` Chas Williams
2018-08-03  5:47                   ` Matan Azrad
2018-08-06 16:00                     ` Chas Williams
2018-08-06 17:46                       ` Matan Azrad
2018-08-06 19:01                         ` Chas Williams
2018-08-06 19:35                           ` Matan Azrad
2018-09-11  3:31                             ` Chas Williams
2018-09-12  5:56                               ` Matan Azrad
2018-09-13 15:14                                 ` Chas Williams
2018-09-13 15:40                                   ` Matan Azrad
2018-09-16 16:14                                     ` Chas Williams
2018-09-17  6:29                                       ` Matan Azrad
2018-08-02 21:05             ` Chas Williams
2018-08-02  9:57 ` [dpdk-dev] [PATCH v2 1/2] net/bonding: in 8023ad mode enable all multicast rather than promiscuous Radu Nicolau
2018-08-02  9:57   ` [dpdk-dev] [PATCH v2 2/2] net/bonding: propagate promiscous mode in mode 4 Radu Nicolau
2018-08-02 10:21   ` [dpdk-dev] [PATCH v2 1/2] net/bonding: in 8023ad mode enable all multicast rather than promiscuous Matan Azrad
2018-08-02 21:16   ` Chas Williams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAG2-GknPmLqRG_RV+=R3WMYL8hnTff5fo63rk2nPGd4r2CzVJg@mail.gmail.com' \
    --to=3chas3@gmail.com \
    --cc=chas3@att.com \
    --cc=declan.doherty@intel.com \
    --cc=dev@dpdk.org \
    --cc=radu.nicolau@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).