Re: [PATCH net] net: dsa: tag_brcm: do not mark link local traffic as offloaded

From: Florian Fainelli
Date: Mon Nov 10 2025 - 11:37:21 EST


On November 9, 2025 5:46:35 AM PST, Jonas Gorski <jonas.gorski@xxxxxxxxx> wrote:
>Broadcom switches locally terminate link local traffic and do not
>forward it, so we should not mark it as offloaded.
>
>In some situations we still want/need to flood this traffic, e.g. if STP
>is disabled, or it is explicitly enabled via the group_fwd_mask. But if
>the skb is marked as offloaded, the kernel will assume this was already
>done in hardware, and the packets never reach other bridge ports.
>
>So ensure that link local traffic is never marked as offloaded, so that
>the kernel can forward/flood these packets in software if needed.
>
>Since the local termination in not configurable, check the destination
>MAC, and never mark packets as offloaded if it is a link local ether
>address.
>
>While modern switches set the tag reason code to BRCM_EG_RC_PROT_TERM
>for trapped link local traffic, they also set it for link local traffic
>that is flooded (01:80:c2:00:00:10 to 01:80:c2:00:00:2f), so we cannot
>use it and need to look at the destination address for them as well.
>
>Fixes: 964dbf186eaa ("net: dsa: tag_brcm: add support for legacy tags")
>Fixes: 0e62f543bed0 ("net: dsa: Fix duplicate frames flooded by learning")
>Signed-off-by: Jonas Gorski <jonas.gorski@xxxxxxxxx>

Reviewed-by: Florian Fainelli <florian.fainelli@xxxxxxxxxxxx>

Florian