Thread (11 messages) 11 messages, 5 authors, 2021-01-19

Re: commit 4c7ea3c0791e (net: dsa: mv88e6xxx: disable SA learning for DSA and CPU ports)

From: Tobias Waldekranz <tobias@waldekranz.com>
Date: 2021-01-18 19:12:54

On Mon, Jan 18, 2021 at 20:01, Andrew Lunn [off-list ref] wrote:
On Mon, Jan 18, 2021 at 07:30:49PM +0100, Tobias Waldekranz wrote:
quoted
On Mon, Jan 18, 2021 at 18:50, Andrew Lunn [off-list ref] wrote:
quoted
quoted
I suppose the real solution is having userspace do some "bridge mdb add"
yoga, but since no code currently uses
MV88E6XXX_G1_ATU_DATA_STATE_MC_STATIC_DA_MGMT, I don't think there's any
way to actually achieve this. And I have no idea how to represent the
requirement that "frames with this multicast DA are only to be directed
at the CPU" in a hardware-agnostic way.
The switchdev interface for this exists, because there can be
multicast listeners on the bridge. When they join a group, they ask
the switch to put in a HOST MDB, which should cause the traffic for
That is not quite the same thing as "management" though. Adding the
group to the host MDB will not allow it to pass through blocked (in the
STP sense) ports for example. With a management entry, the switch will
trap the packet with a TO_CPU tag, which means no ingress policy can get
in the way of it reaching the CPU.
Ah, yes. I don't suppose the DA is part of the special group which the
switch will recognise as management and pass it on?

01:80:c2:00:00:00 - 01:80:c2:00:00:07
01:80:c2:00:00:08 - 01:80:c2:00:00:0f
01:80:c2:00:00:20 - 01:80:c2:00:00:27
01:80:c2:00:00:28 - 01:80:c2:00:00:2f
Unfortunately there are many protocols that live outside of the IEEE
range. ERP(S) which Rasmus was talking about uses a range assigned to
ITU IIRC. MRP a third one I believe.

The Reserved2CPU functionality has an additional deficiency vs. separate
management entries: they all use the same priority. This means that you
must assign LLDP frames to the same queue as STP for example, which is
typically not what you want. With a management entry (with priority
override) you can set them individually.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help