31 lines
945 B
Diff
31 lines
945 B
Diff
|
From 0663ebde114a6fb2c28c622ba5212b302d4d2581 Mon Sep 17 00:00:00 2001
|
||
|
From: Tobias Waldekranz <tobias@waldekranz.com>
|
||
|
Date: Sat, 16 Jan 2021 02:25:13 +0100
|
||
|
Subject: [PATCH] net: dsa: Include bridge addresses in assisted CPU port
|
||
|
learning
|
||
|
|
||
|
Now that notifications are sent out for addresses added to the bridge
|
||
|
itself, extend DSA to include those addresses in the hardware FDB when
|
||
|
assisted CPU port learning is enabled.
|
||
|
|
||
|
Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com>
|
||
|
---
|
||
|
net/dsa/slave.c | 6 +++++-
|
||
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
||
|
|
||
|
--- a/net/dsa/slave.c
|
||
|
+++ b/net/dsa/slave.c
|
||
|
@@ -1709,7 +1709,11 @@ static int dsa_slave_switchdev_event(str
|
||
|
struct net_device *br_dev;
|
||
|
struct dsa_slave_priv *p;
|
||
|
|
||
|
- br_dev = netdev_master_upper_dev_get_rcu(dev);
|
||
|
+ if (netif_is_bridge_master(dev))
|
||
|
+ br_dev = dev;
|
||
|
+ else
|
||
|
+ br_dev = netdev_master_upper_dev_get_rcu(dev);
|
||
|
+
|
||
|
if (!br_dev)
|
||
|
return NOTIFY_DONE;
|
||
|
|