dm9601: Fix multicast hash table handling
The loop forgot to walk the net->mc_list list, so only the first multicast address was programmed into the hash table. Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
Родитель
209261c019
Коммит
47df976c4e
|
@ -354,7 +354,7 @@ static void dm9601_set_multicast(struct net_device *net)
|
|||
struct dev_mc_list *mc_list = net->mc_list;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < net->mc_count; i++) {
|
||||
for (i = 0; i < net->mc_count; i++, mc_list = mc_list->next) {
|
||||
u32 crc = ether_crc(ETH_ALEN, mc_list->dmi_addr) >> 26;
|
||||
hashes[crc >> 3] |= 1 << (crc & 0x7);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче