Re: [PATCH net-next v2 03/12] net: dsa: tag_sja1105: absorb logic for not overwriting precise info into dsa_8021q_rcv()
From: Vladimir Oltean
Date: Thu Jun 20 2024 - 11:39:31 EST
On Wed, Jun 19, 2024 at 10:52:09PM +0200, Pawel Dembicki wrote:
> From: Vladimir Oltean <vladimir.oltean@xxxxxxx>
>
> In both sja1105_rcv() and sja1110_rcv(), we may have precise source port
> information coming from parallel hardware mechanisms, in addition to the
> tag_8021q header.
>
> Only sja1105_rcv() has extra logic to not overwrite that precise info
> with what's present in the VLAN tag. This is because sja1110_rcv() gets
> by, by having a reversed set of checks when assigning skb->dev. When the
> source port is imprecise (vbid >=1), source_port and switch_id will be
> set to zeroes by dsa_8021q_rcv(), which might be problematic. But by
> checking for vbid >= 1 first, sja1110_rcv() fends that off.
>
> We would like to make more code common between sja1105_rcv() and
> sja1110_rcv(), and for that, we need to make sure that sja1110_rcv()
> also goes through the precise source port preservation logic.
>
> Signed-off-by: Vladimir Oltean <vladimir.oltean@xxxxxxx>
> Signed-off-by: Pawel Dembicki <paweldembicki@xxxxxxxxx>
> ---
Reviewed-by: Vladimir Oltean <olteanv@xxxxxxxxx>
Tested-by: Vladimir Oltean <olteanv@xxxxxxxxx>