Re: [PATCH] Fix infinite loop on dev_mc_unsync()

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Joe Perches
Date: Friday, November 9, 2007 - 12:07 pm

On Fri, 2007-11-09 at 13:51 -0500, Luis R. Rodriguez wrote:

Perhaps this is clearer as:

void dev_mc_unsync(struct net_device *to, struct net_device *from)
{
	struct dev_addr_list *da;

	netif_tx_lock_bh(from);
	netif_tx_lock_bh(to);

	da = from->mc_list;
	while (da) {
		if (da->da_synced) {
			__dev_addr_delete(&to->mc_list, &to->mc_count,
					  da->da_addr, da->da_addrlen, 0);
			__dev_addr_delete(&from->mc_list, &from->mc_count,
					  da->da_addr, da->da_addrlen, 0);
			da->da_synced = 0;
		}
		da = da->next;
	}

	__dev_set_rx_mode(to);

	netif_tx_unlock_bh(to);
	netif_tx_unlock_bh(from);
}
EXPORT_SYMBOL(dev_mc_unsync);


-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH] Fix infinite loop on dev_mc_unsync(), Luis R. Rodriguez, (Fri Nov 9, 8:11 am)
Re: [PATCH] Fix infinite loop on dev_mc_unsync(), Luis R. Rodriguez, (Fri Nov 9, 11:51 am)
Re: [PATCH] Fix infinite loop on dev_mc_unsync(), Joe Perches, (Fri Nov 9, 12:07 pm)
Re: [PATCH] Fix infinite loop on dev_mc_unsync(), Luis R. Rodriguez, (Fri Nov 9, 12:21 pm)
Re: [PATCH] Fix infinite loop on dev_mc_unsync(), Patrick McHardy, (Fri Nov 9, 4:12 pm)
Re: [PATCH] Fix infinite loop on dev_mc_unsync(), Joe Perches, (Fri Nov 9, 5:08 pm)
Re: [PATCH] Fix infinite loop on dev_mc_unsync(), Patrick McHardy, (Fri Nov 9, 5:13 pm)
Re: [PATCH] Fix infinite loop on dev_mc_unsync(), David Miller, (Sat Nov 10, 10:34 pm)