[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20201114113205.19c02fa9@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
Date: Sat, 14 Nov 2020 11:32:05 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: Tobias Waldekranz <tobias@...dekranz.com>
Cc: davem@...emloft.net, andrew@...n.ch, vivien.didelot@...il.com,
netdev@...r.kernel.org
Subject: Re: [PATCH v2 net] net: dsa: mv88e6xxx: Avoid VTU corruption on
6097
On Thu, 12 Nov 2020 12:43:35 +0100 Tobias Waldekranz wrote:
> As soon as you add the second port to a VLAN, all other port
> membership configuration is overwritten with zeroes. The HW interprets
> this as all ports being "unmodified members" of the VLAN.
>
> In the simple case when all ports belong to the same VLAN, switching
> will still work. But using multiple VLANs or trying to set multiple
> ports as tagged members will not work.
>
> On the 6352, doing a VTU GetNext op, followed by an STU GetNext op
> will leave you with both the member- and state- data in the VTU/STU
> data registers. But on the 6097 (which uses the same implementation),
> the STU GetNext will override the information gathered from the VTU
> GetNext.
>
> Separate the two stages, parsing the result of the VTU GetNext before
> doing the STU GetNext.
>
> We opt to update the existing implementation for all applicable chips,
> as opposed to creating a separate callback for 6097, because although
> the previous implementation did work for (at least) 6352, the
> datasheet does not mention the masking behavior.
>
> Fixes: ef6fcea37f01 ("net: dsa: mv88e6xxx: get STU entry on VTU GetNext")
> Signed-off-by: Tobias Waldekranz <tobias@...dekranz.com>
Applied, thanks!
Powered by blists - more mailing lists