aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVlad Yasevich <vyasevic@redhat.com>2013-03-07 07:59:25 +0000
committerSteven Rostedt <rostedt@goodmis.org>2013-03-22 23:24:30 -0400
commit03cf0cfbf2ddabf70af5832ec5d462cbbdb249bd (patch)
tree22c3cfb9f50c3d0d5c915af61dea7d74738ce18d
parent46a12abf1ce93145c39da67af811312e1f0fa12f (diff)
team: unsyc the devices addresses when port is removed
[ Upstream commit 972ea34911d5f81639d963224d00add37170bd52 ] When a team port is removed, unsync all devices addresses that may have been synched to the port devices. CC: Jiri Pirko <jiri@resnulli.us> Signed-off-by: Vlad Yasevich <vyasevic@redhat.com> Acked-by: Jiri Pirko <jiri@resnulli.us> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/team/team.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c
index f8cd61f449a4..8a11070e9f48 100644
--- a/drivers/net/team/team.c
+++ b/drivers/net/team/team.c
@@ -1008,6 +1008,8 @@ static int team_port_del(struct team *team, struct net_device *port_dev)
netdev_set_master(port_dev, NULL);
team_port_disable_netpoll(port);
vlan_vids_del_by_dev(port_dev, dev);
+ dev_uc_unsync(port_dev, dev);
+ dev_mc_unsync(port_dev, dev);
dev_close(port_dev);
team_port_leave(team, port);
team_port_set_orig_mac(port);