diff options
author | David S. Miller <davem@davemloft.net> | 2013-04-15 16:10:53 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-04-15 16:10:53 -0400 |
commit | 61f47132dcba1eacf8fd8e64488d0b6d4bcbe4a0 (patch) | |
tree | 97014ff57652d41b366fb41a08c93e7aa3a798e8 /drivers/net | |
parent | 0022d2dd4d76e0e7d5c241c343a5016fdfa2ad4f (diff) | |
parent | 72b270323dee45ccf4aafff7118dcc46caaed22e (diff) | |
download | kernel_goldelico_gta04-61f47132dcba1eacf8fd8e64488d0b6d4bcbe4a0.zip kernel_goldelico_gta04-61f47132dcba1eacf8fd8e64488d0b6d4bcbe4a0.tar.gz kernel_goldelico_gta04-61f47132dcba1eacf8fd8e64488d0b6d4bcbe4a0.tar.bz2 |
Merge branch 'sync_multiple'
Vlad Yasevich says:
====================
Current dev_[uc|mc]_addr_sync() API currently correctly syncs the
addresses to the first device. Any subsequent calls to sync will
not do anything since the synched variable will be set. This
variable is used as an optimization to skip over addresses that have
been synched.
There are some devices (ex: team) that attempt to do the above. There
is other work in progress that needs to above to work corretly.
The short series introduces dev_[uc|mc]_addr_synch_multiple() that
allows multiple calls to sync to multiple different devices. Original
API is left alone and still has the limitation.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/team/team.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c index 621c1bd..9a31e8e 100644 --- a/drivers/net/team/team.c +++ b/drivers/net/team/team.c @@ -1504,8 +1504,8 @@ static void team_set_rx_mode(struct net_device *dev) rcu_read_lock(); list_for_each_entry_rcu(port, &team->port_list, list) { - dev_uc_sync(port->dev, dev); - dev_mc_sync(port->dev, dev); + dev_uc_sync_multiple(port->dev, dev); + dev_mc_sync_multiple(port->dev, dev); } rcu_read_unlock(); } |