net: convert multiple drivers to use netdev_for_each_mc_addr, part3
Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
3b9a7728d8
commit
0ddf477b8a
@@ -1550,13 +1550,16 @@ static void set_multicast_list(struct net_device *dev)
|
||||
return;
|
||||
cmd = &lp->mc_cmd;
|
||||
cmd->cmd.command = CmdMulticastList;
|
||||
cmd->mc_cnt = netdev_mc_count(dev) * 6;
|
||||
cmd->mc_cnt = cnt * ETH_ALEN;
|
||||
cp = cmd->mc_addrs;
|
||||
for (dmi = dev->mc_list; cnt && dmi != NULL; dmi = dmi->next, cnt--, cp += 6) {
|
||||
memcpy(cp, dmi->dmi_addr, 6);
|
||||
netdev_for_each_mc_addr(dmi, dev) {
|
||||
if (!cnt--)
|
||||
break;
|
||||
memcpy(cp, dmi->dmi_addr, ETH_ALEN);
|
||||
if (i596_debug > 1)
|
||||
DEB(DEB_MULTI,printk(KERN_INFO "%s: Adding address %pM\n",
|
||||
dev->name, cp));
|
||||
cp += ETH_ALEN;
|
||||
}
|
||||
i596_add_cmd(dev, &cmd->cmd);
|
||||
}
|
||||
|
Reference in New Issue
Block a user