netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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
>
>
>
>

  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).