Loading drivers/net/s2io.c +3 −2 Original line number Diff line number Diff line Loading @@ -5092,8 +5092,8 @@ static void s2io_set_multicast(struct net_device *dev) } /* Create the new Rx filter list and update the same in H/W. */ for (i = 0, mclist = dev->mc_list; i < netdev_mc_count(dev); i++, mclist = mclist->next) { i = 0; netdev_for_each_mc_addr(mclist, dev) { memcpy(sp->usr_addrs[i].addr, mclist->dmi_addr, ETH_ALEN); mac_addr = 0; Loading Loading @@ -5121,6 +5121,7 @@ static void s2io_set_multicast(struct net_device *dev) dev->name); return; } i++; } } } Loading drivers/net/sb1250-mac.c +3 −3 Original line number Diff line number Diff line Loading @@ -2161,13 +2161,13 @@ static void sbmac_setmulti(struct sbmac_softc *sc) * XXX if the table overflows */ idx = 1; /* skip station address */ mclist = dev->mc_list; while (mclist && (idx < MAC_ADDR_COUNT)) { netdev_for_each_mc_addr(mclist, dev) { if (idx == MAC_ADDR_COUNT) break; reg = sbmac_addr2reg(mclist->dmi_addr); port = sc->sbm_base + R_MAC_ADDR_BASE+(idx * sizeof(uint64_t)); __raw_writeq(reg, port); idx++; mclist = mclist->next; } /* Loading drivers/net/sc92031.c +1 −1 Original line number Diff line number Diff line Loading @@ -435,7 +435,7 @@ static void _sc92031_set_mar(struct net_device *dev) else if (dev->flags & IFF_MULTICAST) { struct dev_mc_list *mc_list; for (mc_list = dev->mc_list; mc_list; mc_list = mc_list->next) { netdev_for_each_mc_addr(mc_list, dev) { u32 crc; unsigned bit = 0; Loading drivers/net/sfc/efx.c +2 −4 Original line number Diff line number Diff line Loading @@ -1602,11 +1602,10 @@ static int efx_set_mac_address(struct net_device *net_dev, void *data) static void efx_set_multicast_list(struct net_device *net_dev) { struct efx_nic *efx = netdev_priv(net_dev); struct dev_mc_list *mc_list = net_dev->mc_list; struct dev_mc_list *mc_list; union efx_multicast_hash *mc_hash = &efx->multicast_hash; u32 crc; int bit; int i; efx->promiscuous = !!(net_dev->flags & IFF_PROMISC); Loading @@ -1615,11 +1614,10 @@ static void efx_set_multicast_list(struct net_device *net_dev) memset(mc_hash, 0xff, sizeof(*mc_hash)); } else { memset(mc_hash, 0x00, sizeof(*mc_hash)); for (i = 0; i < netdev_mc_count(net_dev); i++) { netdev_for_each_mc_addr(mc_list, net_dev) { crc = ether_crc_le(ETH_ALEN, mc_list->dmi_addr); bit = crc & (EFX_MCAST_HASH_ENTRIES - 1); set_bit_le(bit, mc_hash->byte); mc_list = mc_list->next; } /* Broadcast packets go through the multicast hash filter. Loading drivers/net/sis190.c +1 −3 Original line number Diff line number Diff line Loading @@ -849,12 +849,10 @@ static void sis190_set_rx_mode(struct net_device *dev) mc_filter[1] = mc_filter[0] = 0xffffffff; } else { struct dev_mc_list *mclist; unsigned int i; rx_mode = AcceptBroadcast | AcceptMyPhys; mc_filter[1] = mc_filter[0] = 0; for (i = 0, mclist = dev->mc_list; mclist && i < netdev_mc_count(dev); i++, mclist = mclist->next) { netdev_for_each_mc_addr(mclist, dev) { int bit_nr = ether_crc(ETH_ALEN, mclist->dmi_addr) & 0x3f; mc_filter[bit_nr >> 5] |= 1 << (bit_nr & 31); Loading Loading
drivers/net/s2io.c +3 −2 Original line number Diff line number Diff line Loading @@ -5092,8 +5092,8 @@ static void s2io_set_multicast(struct net_device *dev) } /* Create the new Rx filter list and update the same in H/W. */ for (i = 0, mclist = dev->mc_list; i < netdev_mc_count(dev); i++, mclist = mclist->next) { i = 0; netdev_for_each_mc_addr(mclist, dev) { memcpy(sp->usr_addrs[i].addr, mclist->dmi_addr, ETH_ALEN); mac_addr = 0; Loading Loading @@ -5121,6 +5121,7 @@ static void s2io_set_multicast(struct net_device *dev) dev->name); return; } i++; } } } Loading
drivers/net/sb1250-mac.c +3 −3 Original line number Diff line number Diff line Loading @@ -2161,13 +2161,13 @@ static void sbmac_setmulti(struct sbmac_softc *sc) * XXX if the table overflows */ idx = 1; /* skip station address */ mclist = dev->mc_list; while (mclist && (idx < MAC_ADDR_COUNT)) { netdev_for_each_mc_addr(mclist, dev) { if (idx == MAC_ADDR_COUNT) break; reg = sbmac_addr2reg(mclist->dmi_addr); port = sc->sbm_base + R_MAC_ADDR_BASE+(idx * sizeof(uint64_t)); __raw_writeq(reg, port); idx++; mclist = mclist->next; } /* Loading
drivers/net/sc92031.c +1 −1 Original line number Diff line number Diff line Loading @@ -435,7 +435,7 @@ static void _sc92031_set_mar(struct net_device *dev) else if (dev->flags & IFF_MULTICAST) { struct dev_mc_list *mc_list; for (mc_list = dev->mc_list; mc_list; mc_list = mc_list->next) { netdev_for_each_mc_addr(mc_list, dev) { u32 crc; unsigned bit = 0; Loading
drivers/net/sfc/efx.c +2 −4 Original line number Diff line number Diff line Loading @@ -1602,11 +1602,10 @@ static int efx_set_mac_address(struct net_device *net_dev, void *data) static void efx_set_multicast_list(struct net_device *net_dev) { struct efx_nic *efx = netdev_priv(net_dev); struct dev_mc_list *mc_list = net_dev->mc_list; struct dev_mc_list *mc_list; union efx_multicast_hash *mc_hash = &efx->multicast_hash; u32 crc; int bit; int i; efx->promiscuous = !!(net_dev->flags & IFF_PROMISC); Loading @@ -1615,11 +1614,10 @@ static void efx_set_multicast_list(struct net_device *net_dev) memset(mc_hash, 0xff, sizeof(*mc_hash)); } else { memset(mc_hash, 0x00, sizeof(*mc_hash)); for (i = 0; i < netdev_mc_count(net_dev); i++) { netdev_for_each_mc_addr(mc_list, net_dev) { crc = ether_crc_le(ETH_ALEN, mc_list->dmi_addr); bit = crc & (EFX_MCAST_HASH_ENTRIES - 1); set_bit_le(bit, mc_hash->byte); mc_list = mc_list->next; } /* Broadcast packets go through the multicast hash filter. Loading
drivers/net/sis190.c +1 −3 Original line number Diff line number Diff line Loading @@ -849,12 +849,10 @@ static void sis190_set_rx_mode(struct net_device *dev) mc_filter[1] = mc_filter[0] = 0xffffffff; } else { struct dev_mc_list *mclist; unsigned int i; rx_mode = AcceptBroadcast | AcceptMyPhys; mc_filter[1] = mc_filter[0] = 0; for (i = 0, mclist = dev->mc_list; mclist && i < netdev_mc_count(dev); i++, mclist = mclist->next) { netdev_for_each_mc_addr(mclist, dev) { int bit_nr = ether_crc(ETH_ALEN, mclist->dmi_addr) & 0x3f; mc_filter[bit_nr >> 5] |= 1 << (bit_nr & 31); Loading