mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
33 lines
957 B
Diff
33 lines
957 B
Diff
--- a/include/linux/if_bridge.h
|
|
+++ b/include/linux/if_bridge.h
|
|
@@ -240,4 +240,7 @@ extern br_get_dst_hook_t __rcu *br_get_d
|
|
extern struct net_device *br_fdb_bridge_dev_get_and_hold(struct net_bridge *br);
|
|
/* QCA NSS bridge-mgr support - End */
|
|
|
|
+/* QCA NSS SSDK support - Start */
|
|
+extern int br_fdb_delete_by_netdev(struct net_device *dev,const unsigned char *addr, u16 vid);
|
|
+/* QCA NSS SSDK support - End */
|
|
#endif
|
|
--- a/net/bridge/br_fdb.c
|
|
+++ b/net/bridge/br_fdb.c
|
|
@@ -1246,6 +1246,19 @@ static int __br_fdb_delete(struct net_br
|
|
return err;
|
|
}
|
|
|
|
+int br_fdb_delete_by_netdev(struct net_device *dev,
|
|
+ const unsigned char *addr, u16 vid)
|
|
+{
|
|
+ int err;
|
|
+
|
|
+ rtnl_lock();
|
|
+ err = br_fdb_delete(NULL, NULL, dev, addr, vid);
|
|
+ rtnl_unlock();
|
|
+
|
|
+ return err;
|
|
+}
|
|
+EXPORT_SYMBOL_GPL(br_fdb_delete_by_netdev);
|
|
+
|
|
/* Remove neighbor entry with RTM_DELNEIGH */
|
|
int br_fdb_delete(struct ndmsg *ndm, struct nlattr *tb[],
|
|
struct net_device *dev,
|