summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Vosburgh <fubar@us.ibm.com>2013-05-31 13:57:29 +0200
committerDavid S. Miller <davem@davemloft.net>2013-06-01 01:56:56 +0200
commitb190a50875b95e58ebe2b00ed3bf7f1d44961471 (patch)
treeaec7043a3077c42ddaa6131fbaf39c03856e87fe
parentnet/core: __hw_addr_sync_one / _multiple broken (diff)
downloadlinux-b190a50875b95e58ebe2b00ed3bf7f1d44961471.tar.xz
linux-b190a50875b95e58ebe2b00ed3bf7f1d44961471.zip
net/core: dev_mc_sync_multiple calls wrong helper
The dev_mc_sync_multiple function is currently calling __hw_addr_sync, and not __hw_addr_sync_multiple. This will result in addresses only being synced to the first device from the set. Corrected by calling the _multiple variant. Signed-off-by: Jay Vosburgh <fubar@us.ibm.com> Reviewed-by: Vlad Yasevich <vyasevic@redhat.com> Tested-by: Shawn Bohrer <sbohrer@rgmadvisors.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/core/dev_addr_lists.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/core/dev_addr_lists.c b/net/core/dev_addr_lists.c
index 8e2c2ef8053d..6cda4e2c2132 100644
--- a/net/core/dev_addr_lists.c
+++ b/net/core/dev_addr_lists.c
@@ -801,7 +801,7 @@ int dev_mc_sync_multiple(struct net_device *to, struct net_device *from)
return -EINVAL;
netif_addr_lock_nested(to);
- err = __hw_addr_sync(&to->mc, &from->mc, to->addr_len);
+ err = __hw_addr_sync_multiple(&to->mc, &from->mc, to->addr_len);
if (!err)
__dev_set_rx_mode(to);
netif_addr_unlock(to);