blob: 14f62ec19aa8c3da3252393336f77bc21813880f [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001From 0663ebde114a6fb2c28c622ba5212b302d4d2581 Mon Sep 17 00:00:00 2001
2From: Tobias Waldekranz <tobias@waldekranz.com>
3Date: Sat, 16 Jan 2021 02:25:13 +0100
4Subject: [PATCH] net: dsa: Include bridge addresses in assisted CPU port
5 learning
6
7Now that notifications are sent out for addresses added to the bridge
8itself, extend DSA to include those addresses in the hardware FDB when
9assisted CPU port learning is enabled.
10
11Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com>
12---
13 net/dsa/slave.c | 6 +++++-
14 1 file changed, 5 insertions(+), 1 deletion(-)
15
16--- a/net/dsa/slave.c
17+++ b/net/dsa/slave.c
18@@ -1710,7 +1710,11 @@ static int dsa_slave_switchdev_event(str
19 struct net_device *br_dev;
20 struct dsa_slave_priv *p;
21
22- br_dev = netdev_master_upper_dev_get_rcu(dev);
23+ if (netif_is_bridge_master(dev))
24+ br_dev = dev;
25+ else
26+ br_dev = netdev_master_upper_dev_get_rcu(dev);
27+
28 if (!br_dev)
29 return NOTIFY_DONE;
30