Commit ba853fe6 authored by Ajay Singh's avatar Ajay Singh Committed by Greg Kroah-Hartman
Browse files

staging: wilc1000: refactor wilc_set_multicast_list() function



Refactor wilc_set_multicast_list() by making below changes:
o use kmalloc_array
o remove unnecessary res
o add u8 *cur_mc
o use i as index
o use '%pM' extension in netdev_dbg()

The below checkpatch issue is also resolved after code refactor.
'spaces preferred around that '/' (ctx:VxV)'

Suggested-by: default avatarJoe Perches <joe@perches.com>
Signed-off-by: default avatarAjay Singh <ajay.kathat@microchip.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent fb8ec215
Loading
Loading
Loading
Loading
+10 −10
Original line number Diff line number Diff line
@@ -796,9 +796,9 @@ static void wilc_set_multicast_list(struct net_device *dev)
{
	struct netdev_hw_addr *ha;
	struct wilc_vif *vif = netdev_priv(dev);
	int i = 0;
	int i;
	u8 *mc_list;
	int res;
	u8 *cur_mc;

	if (dev->flags & IFF_PROMISC)
		return;
@@ -814,20 +814,20 @@ static void wilc_set_multicast_list(struct net_device *dev)
		return;
	}

	mc_list = kmalloc(dev->mc.count * ETH_ALEN, GFP_KERNEL);
	mc_list = kmalloc_array(dev->mc.count, ETH_ALEN, GFP_KERNEL);
	if (!mc_list)
		return;

	cur_mc = mc_list;
	i = 0;
	netdev_for_each_mc_addr(ha, dev) {
		memcpy(mc_list + i, ha->addr, ETH_ALEN);
		netdev_dbg(dev, "Entry[%d]: %x:%x:%x:%x:%x:%x\n", i/ETH_ALEN,
			   mc_list[i], mc_list[i + 1], mc_list[i + 2],
			   mc_list[i + 3], mc_list[i + 4], mc_list[i + 5]);
		i += ETH_ALEN;
		memcpy(cur_mc, ha->addr, ETH_ALEN);
		netdev_dbg(dev, "Entry[%d]: %pM\n", i, cur_mc);
		i++;
		cur_mc += ETH_ALEN;
	}

	res = wilc_setup_multicast_filter(vif, true, dev->mc.count, mc_list);
	if (res)
	if (wilc_setup_multicast_filter(vif, true, dev->mc.count, mc_list))
		kfree(mc_list);
}