From: Jay Vosburgh <jay.vosburgh@canonical.com>
To: netdev@vger.kernel.org
Cc: David Miller <davem@davemloft.net>,
adobriyan@gmail.com, vfalico@gmail.com, andy@greyhouse.net
Subject: Re: [PATCH v2] bonding: ban stacked bonding support
Date: Fri, 20 Mar 2015 15:30:49 -0700 [thread overview]
Message-ID: <29628.1426890649@famine> (raw)
In-Reply-To: <28755.1426885337@famine>
Jay Vosburgh <jay.vosburgh@canonical.com> wrote:
>David Miller <davem@davemloft.net> wrote:
>
>From: Alexey Dobriyan <adobriyan@gmail.com>
>>Date: Fri, 20 Mar 2015 20:46:38 +0300
>>
>>> If you add bonding master as a slave, and then release it,
>>> it will no longer be an IFF_BONDING creating problems like described at
>>> https://bugzilla.kernel.org/show_bug.cgi?id=89541
>>>
>>> echo +bond1 >/sys/class/net/bonding_masters
>>> echo 1 >/sys/class/net/bond1/bonding/mode
>>> echo +bond2 >/sys/class/net/bonding_masters
>>> echo +bond2 >/sys/class/net/bond1/bonding/slaves
>>> echo -bond2 >/sys/class/net/bond1/bonding/slaves
>>> echo -bond2 >/sys/class/net/bonding_masters
>>>
>>> cat /proc/net/bonding/bond2 # should not exist
>>> [oops]
>>>
>>> Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
>>
>>I feel like this has been brought up before and it was stated that
>>some people are actually using things like this.
>>
>>I could be mistaken.
>
> I don't think you are. I did a bit of checking after the
>discussion last month and found a few relatively recent statements that
>people were nesting bonds and it was apparently working, e.g.,
>
>http://www.alexwitherspoon.com/debian-nested-bonded-interfaces/
>
> which, ironically, is exactly the case that would benefit from
>not nesting the bonds, as 802.3ad would handle multiple aggregators
>itself.
>
> However, there is also this discussion
>
>http://lists.openwall.net/netdev/2011/01/22/66
>
> from netdev in 2011 that states that the ingress path of nested
>bonds does not work, at least for the case described. Perhaps some
>configurations work and some don't.
>
> Let me see if I can run a quick test and see if this actually
>works for me...
I ran a few tests against net-next from a couple of days ago.
A simple test of two balance-rr mode bonds nested below an
active-backup mode bond appears to function, passing traffic in both
directions. I didn't test extensively, but ingress does not appear to
be broken as the 2011 netdev discussion indicates.
The sequence supplied by Alexey does reveal a bug, in that the
bond2 /proc file isn't removed when it should be. In light of the
above, however, this will have to be fixed some way other than
disallowing nesting.
-J
---
-Jay Vosburgh, jay.vosburgh@canonical.com
prev parent reply other threads:[~2015-03-20 22:30 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-20 22:20 [PATCH] bonding: ban stacked bonding support Alexey Dobriyan
2015-02-20 23:14 ` Jay Vosburgh
2015-02-21 2:55 ` Andy Gospodarek
2015-02-21 16:59 ` Jiri Pirko
2015-03-20 17:43 ` Alexey Dobriyan
2015-03-20 17:46 ` [PATCH v2] " Alexey Dobriyan
2015-03-20 20:38 ` David Miller
2015-03-20 21:02 ` Jay Vosburgh
2015-03-20 22:30 ` Jay Vosburgh [this message]
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=29628.1426890649@famine \
--to=jay.vosburgh@canonical.com \
--cc=adobriyan@gmail.com \
--cc=andy@greyhouse.net \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
--cc=vfalico@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.