diff options
author | Nikolay Aleksandrov <nikolay@cumulusnetworks.com> | 2018-05-03 13:47:24 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-05-03 20:40:54 +0300 |
commit | faa1cd8298439cf56f7fd2d8647726b30c263bf0 (patch) | |
tree | 651cbd227fc7cb4252c03f66a07f608a9a31378a /net/bridge/br_private.h | |
parent | 2e5185519450afe948e6418a699799c60ac8597d (diff) | |
download | linux-faa1cd8298439cf56f7fd2d8647726b30c263bf0.tar.xz |
net: bridge: avoid duplicate notification on up/down/change netdev events
While handling netdevice events, br_device_event() sometimes uses
br_stp_(disable|enable)_port which unconditionally send a notification,
but then a second notification for the same event is sent at the end of
the br_device_event() function. To avoid sending duplicate notifications
in such cases, check if one has already been sent (i.e.
br_stp_enable/disable_port have been called).
The patch is based on a change by Satish Ashok.
Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge/br_private.h')
-rw-r--r-- | net/bridge/br_private.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h index 1a5093115534..0ddeeea2c6a7 100644 --- a/net/bridge/br_private.h +++ b/net/bridge/br_private.h @@ -573,7 +573,7 @@ void br_flood(struct net_bridge *br, struct sk_buff *skb, enum br_pkt_type pkt_type, bool local_rcv, bool local_orig); /* br_if.c */ -void br_port_carrier_check(struct net_bridge_port *p); +void br_port_carrier_check(struct net_bridge_port *p, bool *notified); int br_add_bridge(struct net *net, const char *name); int br_del_bridge(struct net *net, const char *name); int br_add_if(struct net_bridge *br, struct net_device *dev, |