From: Jiri Pirko <jiri@resnulli.us>
To: Arkadi Sharshevsky <arkadis@mellanox.com>
Cc: Vivien Didelot <vivien.didelot@savoirfairelinux.com>,
netdev@vger.kernel.org, davem@davemloft.net, ivecera@redhat.com,
f.fainelli@gmail.com, andrew@lunn.ch, Woojung.Huh@microchip.com,
stephen@networkplumber.org, mlxsw@mellanox.com
Subject: Re: [PATCH net-next v2 00/13] Change DSA's FDB API and perform switchdev cleanup
Date: Fri, 4 Aug 2017 07:23:01 +0200 [thread overview]
Message-ID: <20170804052301.GA1906@nanopsycho.orion> (raw)
In-Reply-To: <aa4f3dc5-6693-4de8-5191-f0a939ff8168@mellanox.com>
Fri, Aug 04, 2017 at 12:39:02AM CEST, arkadis@mellanox.com wrote:
>
>[...]
>
>>> Now we have the "offload" read only flag, which is good to inform about
>>> a successfully programmed hardware, but adds another level of complexity
>>> to understand the interaction with the hardware.
>>>
>>> I think iproute2 is getting more and more confusing. From what I
>>> understood, respecting the "self" flag as described is not possible
>>> anymore due to some retro-compatibility reasons.
>>>
>>> Also Linux must use the hardware as an accelerator (so "self" or
>>> "offload" must be the default), and always fall back to software
>>> otherwise, hence "master" do not make sense here.
>>>
>>> What do you think about this synopsis for bridge fdb add?
>>>
>>> # bridge fdb add LLADDR dev DEV [ offload { on | off } ]
>>>
>>> Where offload defaults to "on". This option should also be ported to
>>> other offloaded features like MDB and VLAN. Even though this is a bit
>>> out of scope of this patchset, do you think this is feasible?
>>>
>>
>> I agree completely that currently its confusing. The documentation
>> should be updated for sure. I think that 'self' was primarily introduced
>> (Commit 77162022a) for NIC embedded switches which are used for sriov, in
>> that case the self is related to the internal eswitch, which completely
>> diverge from the software one (clearly not swithcdev).
>>
>> IMHO For switchdev devices 'self' should not be an option at all, or any
>> other arg regarding hardware. Furthermore, the 'offload' flag should be
>> only relevant during the dump as an indication to the user.
>>
>> Unfortunately, the lack of ability of syncing the sw with hw in DSA's
>> case introduces a problem for indicating that the entries are only
>> in hw, I mean marking it only as offloaded is not enough.
>
>Hi,
>
>It seems impossible currently to move the self to be the default, and
>this introduces regression which you don't approve, so it seems few
>options left:
>
>a) Leave two ways to add fdb, through the bridge (by using the master
> flag) which is introduced in this patchset, and by using the self
> which is the legacy way. In this way no regression will be introduced,
> yet, it feels confusing a bit. The benefit is that we (DSA/mlxsw)
> will be synced.
>b) Leave only the self (which means removing patch no 4,5).
I belive that option a) is the correct way to go. Introduction of self
inclusion was a mistake from the very beginning. I think that we should
just move one and correct this mistake.
Vivien, any arguments against a)?
Thanks!
>
>In both cases the switchdev implementation of .ndo_fdb_add() will be
>moved inside DSA in a similar way to the dump because its only used by
>you.
>
>Option b) actually turns this patchset into cosmetic one which does
>only cleanup.
>
>Thanks,
>Arkadi
>
>
>
>
next prev parent reply other threads:[~2017-08-04 5:23 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-19 16:04 [PATCH net-next v2 00/13] Change DSA's FDB API and perform switchdev cleanup Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 01/13] net: dsa: Change DSA slave FDB API to be switchdev independent Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 02/13] net: dsa: Remove prepare phase for FDB Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 03/13] net: dsa: Remove switchdev dependency from DSA switch notifier chain Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 04/13] net: dsa: Add support for learning FDB through notification Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 05/13] net: dsa: Remove support for FDB add/del via SELF Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 06/13] net: dsa: Add support for querying supported bridge flags Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 07/13] net: dsa: Remove support for vlan dump from DSA's drivers Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 08/13] net: dsa: Remove support for bypass bridge port attributes/vlan set Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 09/13] net: dsa: Remove support for MDB dump from DSA's drivers Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 10/13] net: dsa: Remove redundant MDB dump support Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 11/13] net: dsa: Move FDB dump implementation inside DSA Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 12/13] net: bridge: Remove FDB deletion through switchdev object Arkadi Sharshevsky
2017-07-19 16:04 ` [PATCH net-next v2 13/13] net: switchdev: Remove bridge bypass support from switchdev Arkadi Sharshevsky
2017-07-19 20:17 ` [PATCH net-next v2 00/13] Change DSA's FDB API and perform switchdev cleanup Vivien Didelot
2017-07-20 9:04 ` Arkadi Sharshevsky
2017-07-20 16:26 ` Vivien Didelot
2017-07-23 15:00 ` Arkadi Sharshevsky
2017-08-03 22:39 ` Arkadi Sharshevsky
2017-08-04 5:23 ` Jiri Pirko [this message]
2017-08-04 15:29 ` Vivien Didelot
2017-08-06 13:07 ` Arkadi Sharshevsky
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=20170804052301.GA1906@nanopsycho.orion \
--to=jiri@resnulli.us \
--cc=Woojung.Huh@microchip.com \
--cc=andrew@lunn.ch \
--cc=arkadis@mellanox.com \
--cc=davem@davemloft.net \
--cc=f.fainelli@gmail.com \
--cc=ivecera@redhat.com \
--cc=mlxsw@mellanox.com \
--cc=netdev@vger.kernel.org \
--cc=stephen@networkplumber.org \
--cc=vivien.didelot@savoirfairelinux.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).