From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <3chas3@gmail.com>
Received: from mail-it0-f65.google.com (mail-it0-f65.google.com
 [209.85.214.65]) by dpdk.org (Postfix) with ESMTP id 0D5014CA7;
 Fri, 24 Aug 2018 16:06:10 +0200 (CEST)
Received: by mail-it0-f65.google.com with SMTP id e14-v6so2247902itf.1;
 Fri, 24 Aug 2018 07:06:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=tDhJWxnYt4CBnxRtJ4WjjhlfL6XRRli2eEO4BrqjBEY=;
 b=Nh7E4Ene5p4nDU2nKYSDFfwAXInmqjri4MEl1zfneT1lWN6JZ3tzmt9I5FKsa8/p7L
 ctYebjfY8xXiT/BPCuYbFVN7AFMRPe1QI/rroyM+YP8o7TIWBSL6KcnNsTnlOQ99IH8v
 iQPPWq9Epdr44pKhwbAVx2fMs0yctmsvIJXvo2mwQn9S8oslMCTXYm7Z97inuLGVzHXa
 rcbeq6uk6tNlRhxo0/pm9A9MdSl8SElZBM9tMqToWubdFQ0kOyE65FgzVBXXK89xwwtk
 3qxUSozgMgP+JWrjGT4F1u3fIIOXFkKSBxSB5Q/1hLB6JWetOPgo2a+HK/+/ldGtJQvj
 EzZg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=tDhJWxnYt4CBnxRtJ4WjjhlfL6XRRli2eEO4BrqjBEY=;
 b=gr7YK9f6tzxyBxied7QsaRs02o+VNxuQ2gq48VNl+/1+PzvFuLYVLruNDqSt4ZOJzS
 a1LfuHxegEln3LH641amFWaiNf5lNaSvY+OFH2pfcM0x7Pr/CVPT3QSqG6Tk4+3r8GcH
 LX3CR/GRUxCHsibqRH1Ecz9D/cURtDjT7+xsnIo83SKIB3NnK6SYAU5gq5vdz87O1Cf8
 2+QVSMDn20C72l/gSqJlfhJd6ymTaXCl+qrb+Plq7kIvqr7smqSqIduUsoq/q5fzTsss
 dwx9XjsZEBGg/cLzxeh8qV1FvH3w8we4a0lriFckYYzi8THXCPw+sST9Ssa6y0TQK9OQ
 ipOg==
X-Gm-Message-State: APzg51B5UcLMMo69WxBBYgUoRy/7nve0oHQQnixgxHr2DcjZIKEWoG1h
 ILOduCpmwoBDirskA3uz7wgO6sC7bUGzfYYaLYM=
X-Google-Smtp-Source: ANB0VdbAVQxquHUf5rQo04DvhPf1rThQahKLXZziUSxtgWUVxhD3c+capfjSLNB13+79tUdGdzyJhBEB61LE83HmW+I=
X-Received: by 2002:a24:6b0d:: with SMTP id
 v13-v6mr1628047itc.16.1535119569395; 
 Fri, 24 Aug 2018 07:06:09 -0700 (PDT)
MIME-Version: 1.0
References: <1533129523-1407-1-git-send-email-radu.nicolau@intel.com>
 <0c16cb66-6ee4-ff2d-6d16-7a3fdd021b0c@intel.com> <11360076.HoYMhSRcrZ@xps>
 <CAG2-GkmSxhU22RTiK+_C3y+x2ECsL_ooEuhEzt5n2tyKbMoAKw@mail.gmail.com>
 <b02fe55e-6250-9dba-e13f-90080564b854@intel.com>
 <CAG2-Gk=0QEqE9a=bRWBnr15-+tFC24ehNKNk0BfTgOXjn1q0Yg@mail.gmail.com>
 <ae1f75a3-6857-e79a-f39e-4d432d81ebf4@intel.com>
In-Reply-To: <ae1f75a3-6857-e79a-f39e-4d432d81ebf4@intel.com>
From: Chas Williams <3chas3@gmail.com>
Date: Fri, 24 Aug 2018 10:05:58 -0400
Message-ID: <CAG2-Gk=YT9WAaLx8YzNVjkE=C8wmRYhtfrOPCFAkNfvoJ=cU6g@mail.gmail.com>
To: Ferruh Yigit <ferruh.yigit@intel.com>
Cc: Thomas Monjalon <thomas@monjalon.net>, Chas Williams <chas3@att.com>,
 dev@dpdk.org, Declan Doherty <declan.doherty@intel.com>,
 Radu Nicolau <radu.nicolau@intel.com>, stable@dpdk.org
Content-Type: text/plain; charset="UTF-8"
X-Content-Filtered-By: Mailman/MimeDel 2.1.15
Subject: Re: [dpdk-dev] [dpdk-stable] [PATCH] net/bonding: stop and
 deactivate slaves when bonding port is stopped
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Fri, 24 Aug 2018 14:06:10 -0000

On Fri, Aug 24, 2018 at 6:39 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:

> On 8/23/2018 4:21 PM, Chas Williams wrote:
> >
> >
> > On Thu, Aug 23, 2018 at 9:15 AM Ferruh Yigit <ferruh.yigit@intel.com
> > <mailto:ferruh.yigit@intel.com>> wrote:
> >
> >     On 8/6/2018 4:50 PM, Chas Williams wrote:
> >     > On Sun, Aug 5, 2018 at 5:55 PM Thomas Monjalon <
> thomas@monjalon.net
> >     <mailto:thomas@monjalon.net>> wrote:
> >     >
> >     >> 02/08/2018 15:38, Doherty, Declan:
> >     >>> On 01/08/2018 2:18 PM, Radu Nicolau wrote:
> >     >>>> When a bonding port is stopped also stop and deactivate all
> slaves.
> >     >>>> Otherwise slaves will be still listed as active.
> >     >>>>
> >     >>>> Fixes: 69bce062132b ("net/bonding: do not clear active slave
> count")
> >     >>>> Cc: stable@dpdk.org <mailto:stable@dpdk.org>
> >     >>>>
> >     >>>> Signed-off-by: Radu Nicolau <radu.nicolau@intel.com
> >     <mailto:radu.nicolau@intel.com>>
> >     >>>
> >     >>> Acked-by: Declan Doherty <declan.doherty@intel.com
> >     <mailto:declan.doherty@intel.com>>
> >     >>
> >     >> Waiting for opinion from the other bonding maintainer (Chas)
> >     >> who started to review and has some doubts.
> >     >>
> >     >
> >     > The slaves being listed as active is not a bug.  If the slaves are
> not
> >     > deactivated, then they should be considered activated.  Previously,
> >     > stopping the bonding PMD just reset the active slave count.  That's
> >     > not the right way to deactivate slaves.  This was fixed by
> 69bce062132b.
> >     >
> >     > This patch is new behavior of explicitly deactivating the slaves
> when
> >     > the bonding PMD is stopped.
> >     >
> >     > As I mentioned, I think this makes life difficult for those of us
> using
> >     > an external state machine.  However, that should probably be fixed
> >     > differently then.
> >     >
> >     >
> >     >>
> >     >> Chas, please do you agree with Declan's ack?
> >     >>
> >     >>
> >     >>
> >     > Change the Fixes line.
> >
> >     Hi Chas,
> >
> >     Are you OK with the rest of the patch if Fixes line fixed?
> >     If already have a proposed fixes line I can fix it while merging.
> >
> >
> > Yes, the rest of the patch is fine as long as the Fixes is correct.
> > Try this:
> >
> >     Fixes: 2efb58cbab6e ("bond: new link bonding library")
> >
> > And it's really new behavior.  Perhaps Fixes: isn't quite right.
> > The current code works fine with activated slaves existing outside
> > of the stop/star.
>
> From your description dropping Fixes line seems OK, but it will effect if
> the
> patch backported or not.
>

Then dont' drop the Fixes line.  See below.


> Isn't it clear from bonding requirement what should slave ports' status be
> when
> bonding port it stopped?
>

I am guessing the author's original intent was to deactivate all the
slaves because he reset the activate slave count to 0.  However, that
didn't actually deactivate a slave and later activating an already
active slave after another start would result in some odd failures.

In a more existential sense, what does active mean?  In the case of
802.3ad, a slave is potentially active until the protocol says otherwise
which means a timeout.  So the stopped/started aspect of the port
isn't necessarily a concern.  If you are just briefly stopping a
port to reconfigure, perhaps you don't want to renegotiate the
802.3ad state.  Of course, if you reconfigure a port, there is a
good chance you want to renegotiate with the other end anyway.

TL;DR -- fine with this patch.  Add new Fixes line so backported.