Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7aeef972 authored by Jiri Pirko's avatar Jiri Pirko Committed by David S. Miller
Browse files

net: e1000e: convert to use mc helpers

parent 2cc04d27
Loading
Loading
Loading
Loading
+6 −11
Original line number Diff line number Diff line
@@ -2589,21 +2589,16 @@ static void e1000_set_multi(struct net_device *netdev)

	ew32(RCTL, rctl);

	if (netdev->mc_count) {
		mta_list = kmalloc(netdev->mc_count * 6, GFP_ATOMIC);
	if (!netdev_mc_empty(netdev)) {
		mta_list = kmalloc(netdev_mc_count(netdev) * 6, GFP_ATOMIC);
		if (!mta_list)
			return;

		/* prepare a packed array of only addresses. */
		mc_ptr = netdev->mc_list;

		for (i = 0; i < netdev->mc_count; i++) {
			if (!mc_ptr)
				break;
			memcpy(mta_list + (i*ETH_ALEN), mc_ptr->dmi_addr,
			       ETH_ALEN);
			mc_ptr = mc_ptr->next;
		}
		i = 0;
		netdev_for_each_mc_addr(mc_ptr, netdev)
			memcpy(mta_list + (i++ * ETH_ALEN),
			       mc_ptr->dmi_addr, ETH_ALEN);

		e1000_update_mc_addr_list(hw, mta_list, i);
		kfree(mta_list);