[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20181215005806.3856-4-marex@denx.de>
Date: Sat, 15 Dec 2018 01:58:06 +0100
From: Marek Vasut <marex@...x.de>
To: netdev@...r.kernel.org
Cc: f.fainelli@...il.com, andrew@...n.ch, Marek Vasut <marex@...x.de>,
Tristram Ha <Tristram.Ha@...rochip.com>,
Vivien Didelot <vivien.didelot@...oirfairelinux.com>,
Woojung Huh <woojung.huh@...rochip.com>,
"David S . Miller" <davem@...emloft.net>
Subject: [PATCH V3 3/3] net: dsa: ksz: Add STP multicast handling
In case the destination address is link local, add override bit into the
switch tag to let such a packet through the switch even if the port is
blocked.
Signed-off-by: Marek Vasut <marex@...x.de>
Cc: Tristram Ha <Tristram.Ha@...rochip.com>
Cc: Vivien Didelot <vivien.didelot@...oirfairelinux.com>
Cc: Woojung Huh <woojung.huh@...rochip.com>
Cc: David S. Miller <davem@...emloft.net>
Reviewed-by: Andrew Lunn <andrew@...n.ch>
---
V2: New patch
V3: - Replace down with blocked in commit message
- Add R-B
---
net/dsa/tag_ksz.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/net/dsa/tag_ksz.c b/net/dsa/tag_ksz.c
index c98b53f691bd..da71b9e2af52 100644
--- a/net/dsa/tag_ksz.c
+++ b/net/dsa/tag_ksz.c
@@ -110,6 +110,10 @@ static struct sk_buff *ksz9477_xmit(struct sk_buff *skb,
addr = skb_mac_header(nskb);
*tag = BIT(dp->index);
+
+ if (is_link_local_ether_addr(addr))
+ *tag |= KSZ9477_TAIL_TAG_OVERRIDE;
+
*tag = cpu_to_be16(*tag);
return nskb;
--
2.18.0
Powered by blists - more mailing lists