Ethernet Bridge development
 help / color / mirror / Atom feed
From: Roopa Prabhu <roopa@cumulusnetworks.com>
To: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Cc: netdev@vger.kernel.org, bridge@lists.linux-foundation.org,
	Nikolay Aleksandrov <nikolay@cumulusnetworks.com>,
	"David S. Miller" <davem@davemloft.net>
Subject: Re: [Bridge] [PATCH net] bridge: Fix problems around fdb entries pointing to the bridge device
Date: Thu, 04 Aug 2016 11:27:25 -0700	[thread overview]
Message-ID: <57A3890D.9010809@cumulusnetworks.com> (raw)
In-Reply-To: <ca69126a-3387-7499-c02c-55ba10f0793b@lab.ntt.co.jp>

On 8/4/16, 1:15 AM, Toshiaki Makita wrote:
> On 2016/08/04 16:24, Roopa Prabhu wrote:
>> On 8/3/16, 7:11 PM, Toshiaki Makita wrote:
>>> Adding fdb entries pointing to the bridge device uses fdb_insert(),
>>> which lacks various checks and does not respect added_by_user flag.
>>>
>>> As a result, some inconsistent behavior can happen:
>>> * Adding temporary entries succeeds but results in permanent entries.
>> IIRC this is not specific to fdb entries on the bridge device. all temp
>> fdb entries via iproute2 result in permanent entries. thats why 'dynamic'
>> was added.
> Sorry for confusing you, I meant "temp" (i.e., "static") of bridge fdb
> command.
> "temp", "dynamic" and "use" should not result in "permanent".
>
>>> * Same goes for "dynamic" and "use".
>> This patch seems to not allow dynamic and use entries
>> on the bridge device. I don't see a strong use-case to
>> allow them, but any reason you want to add the restriction now ?
> Because dynamic fdb entries pointing the bridge device cannot be
> created. So it is prohibited. I cannot find other appropriate behavior
> about this.
> Or are you suggesting local entries with aging supported or something
> like that?
no, i am ok with prohibiting it, just was wondering if this is necessary.

>
>>> * Changing mac address of the bridge device causes deletion of
>>>   user-added entries.
>> unless I am missing something, this does not seem to be related to the
>> external fdb entry on the bridge device.
> Yes this is related to manually-added fdb entries on the bridge device.
> When manual addition of fdb pointing the bridge device was introduced,
> we should have set added_by_user on adding the entry and modify
> br_fdb_change_mac_address() to respect the flag, but both were not done.
>
>>> * Replacing existing entries looks successful from userspace but actually
>>>   not, regardless of NLM_F_EXCL flag.
>> curious about this one. I will try it, but if you have an example that
>> will help.
> Before:
> # bridge fdb add 12:34:56:78:90:ab dev enp3s0 master
> # bridge fdb add 12:34:56:78:90:ab dev br0; echo $?
> 0
> # bridge fdb show
> ...
> 12:34:56:78:90:ab dev enp3s0 master br0 permanent
>
> # bridge fdb replace 12:34:56:78:90:ab dev br0; echo $?
> 0
> # bridge fdb show
> ...
> 12:34:56:78:90:ab dev enp3s0 master br0 permanent
>
> After:
> # bridge fdb add 12:34:56:78:90:ab dev enp3s0 master
> # bridge fdb add 12:34:56:78:90:ab dev br0; echo $?
> RTNETLINK answers: File exists
> 255
>
> # bridge fdb replace 12:34:56:78:90:ab dev br0; echo $?
> 0
> # bridge fdb show
> ...
> 12:34:56:78:90:ab dev br0 master br0 permanent
>
ok, thanks for the example.

Acked-by: Roopa Prabhu <roopa@cumulusnetworks.com>

  parent reply	other threads:[~2016-08-04 18:27 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-04  2:11 [Bridge] [PATCH net] bridge: Fix problems around fdb entries pointing to the bridge device Toshiaki Makita
2016-08-04  7:24 ` Roopa Prabhu
2016-08-04  8:15   ` Toshiaki Makita
2016-08-04 10:11     ` Toshiaki Makita
2016-08-04 18:27     ` Roopa Prabhu [this message]
2016-08-05 22:26       ` Stephen Hemminger
2016-08-07 15:07         ` Toshiaki Makita
2016-08-10  4:51 ` David Miller

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=57A3890D.9010809@cumulusnetworks.com \
    --to=roopa@cumulusnetworks.com \
    --cc=bridge@lists.linux-foundation.org \
    --cc=davem@davemloft.net \
    --cc=makita.toshiaki@lab.ntt.co.jp \
    --cc=netdev@vger.kernel.org \
    --cc=nikolay@cumulusnetworks.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