From: Ilias Apalodimas <ilias.apalodimas@linaro.org>
To: Andrew Lunn <andrew@lunn.ch>
Cc: netdev@vger.kernel.org, grygorii.strashko@ti.com,
ivan.khoronzhuk@linaro.org, nsekhar@ti.com, jiri@resnulli.us,
ivecera@redhat.com, f.fainelli@gmail.com,
francois.ozog@linaro.org, yogeshs@ti.com, spatton@ti.com,
Jose.Abreu@synopsys.com
Subject: Re: [RFC v2, net-next, PATCH 0/4] Add switchdev on TI-CPSW
Date: Mon, 18 Jun 2018 20:49:22 +0300 [thread overview]
Message-ID: <20180618174922.GA28394@apalos> (raw)
In-Reply-To: <20180618173025.GF5865@lunn.ch>
On Mon, Jun 18, 2018 at 07:30:25PM +0200, Andrew Lunn wrote:
> On Mon, Jun 18, 2018 at 07:46:02PM +0300, Ilias Apalodimas wrote:
> > On Mon, Jun 18, 2018 at 06:28:36PM +0200, Andrew Lunn wrote:
> > > > Yes, if the CPU port is added on the VLAN then unregistered multicast traffic
> > > > (and thus IGMP joins) will reach the CPU port and everything will work as
> > > > expected. I think we should not consider this as a "problem" as long as it's
> > > > descibed properly in Documentation. This switch is excected to support this.
> > >
> > > Back to the two e1000e. What would you expect to happen with them?
> > > Either IGMP snooping needs to work, or your don't do snooping at
> > > all.
> > That's a different use case
>
> I disagree. That is the exact same use case. I add ports to a bridge
> and i expect the bridge to either do IGMP snooping, or just forward
> all multicast. That is the users expectations. That is how the Linux
> network stack works. If the hardware has limitations you want to try
> to hide them from the user.
Why is this a limitation? Isn't it proper functionality?
If you configure the CPU port as "passthrough" (which again is
the default) then everything works just like e1000e. The user doesn't have to do
anything at all, MDBs are added/deleted based on proper timers/joins etc.
If the user chooses to use the cpu port as a kind of internal L-2 filter,
that's up to him, but having hardware do the filtering for you isn't something
i'd call a limitation.
I am not sure what's the case here though. The hardware operates as you want
by defaulti. As added functionality the user can, if he chooses to, add the
MDBs manually instead of having some piece of code do that for him.
This was clearly described in the first RFC since it was the only reason to add
a CPU port. Is there a problem with the user controlling these capabilities of
the hardware?
> > > So by default, it just needs to work. You can give the user the option
> > > to shoot themselves in the foot, but they need to actively pull the
> > > trigger to blow their own foot off.
>
> > Yes it does by default. I don't consider it "foot shooting" though.
> > If we stop thinking about switches connected to user environments
>
> I never think about switches. I think about a block of acceleration
> hardware, which i try to offload Linux networking to. And if the
> hardware cannot accelerate Linux network functions properly, i don't
> try to offload it. That way it always operates in the same way, and
> the user expectations are clear.
>
> Andrew
The acceleration block is working properly here. The user has the ability to
instruct the acceleration block not to accelerate all the traffic but specific
cases he chooses to. Isn't that a valid use case since the hardware supports
that ?
Regards
Ilias
next prev parent reply other threads:[~2018-06-18 17:49 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-14 11:11 [RFC v2, net-next, PATCH 0/4] Add switchdev on TI-CPSW Ilias Apalodimas
2018-06-14 11:11 ` [RFC v2, net-next, PATCH 1/4] net/cpsw: move common headers definitions to cpsw_priv.h Ilias Apalodimas
2018-06-14 11:11 ` [RFC v2, net-next, PATCH 2/4] net/cpsw_ale: add functions to modify VLANs/MDBs Ilias Apalodimas
2018-06-14 11:11 ` [RFC v2, net-next, PATCH 3/4] net/cpsw: prepare cpsw for switchdev support Ilias Apalodimas
2018-06-14 11:11 ` [RFC v2, net-next, PATCH 4/4] net/cpsw_switchdev: add switchdev mode of operation on cpsw driver Ilias Apalodimas
2018-06-14 11:23 ` Jiri Pirko
2018-06-14 11:32 ` Ilias Apalodimas
2018-06-14 11:30 ` Jiri Pirko
2018-06-14 11:34 ` Ilias Apalodimas
2018-06-14 11:39 ` Jiri Pirko
2018-06-14 11:43 ` Ilias Apalodimas
2018-06-18 23:19 ` Grygorii Strashko
2018-06-20 7:08 ` Jiri Pirko
2018-06-20 12:53 ` Ivan Vecera
2018-06-20 12:59 ` Ilias Apalodimas
2018-06-20 13:54 ` Ivan Vecera
2018-06-18 16:16 ` Andrew Lunn
2018-06-18 20:19 ` Ilias Apalodimas
2018-06-18 23:20 ` Grygorii Strashko
2018-06-20 12:56 ` Ivan Vecera
2018-06-20 17:51 ` Ilias Apalodimas
2018-06-20 17:57 ` Andrew Lunn
2018-06-20 17:58 ` Florian Fainelli
2018-06-20 18:03 ` Ilias Apalodimas
2018-06-21 12:19 ` Ivan Vecera
2018-06-21 12:45 ` Ilias Apalodimas
2018-06-21 15:31 ` Arnd Bergmann
2018-06-22 7:45 ` Ilias Apalodimas
2018-06-27 19:18 ` Grygorii Strashko
2018-06-27 20:40 ` Arnd Bergmann
2018-06-27 23:03 ` Grygorii Strashko
2018-06-28 7:53 ` Arnd Bergmann
2018-06-18 15:04 ` [RFC v2, net-next, PATCH 0/4] Add switchdev on TI-CPSW Andrew Lunn
2018-06-18 16:04 ` Ilias Apalodimas
2018-06-18 16:28 ` Andrew Lunn
2018-06-18 16:46 ` Ilias Apalodimas
2018-06-18 17:30 ` Andrew Lunn
2018-06-18 17:49 ` Ilias Apalodimas [this message]
2018-06-27 21:05 ` Grygorii Strashko
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=20180618174922.GA28394@apalos \
--to=ilias.apalodimas@linaro.org \
--cc=Jose.Abreu@synopsys.com \
--cc=andrew@lunn.ch \
--cc=f.fainelli@gmail.com \
--cc=francois.ozog@linaro.org \
--cc=grygorii.strashko@ti.com \
--cc=ivan.khoronzhuk@linaro.org \
--cc=ivecera@redhat.com \
--cc=jiri@resnulli.us \
--cc=netdev@vger.kernel.org \
--cc=nsekhar@ti.com \
--cc=spatton@ti.com \
--cc=yogeshs@ti.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).