diff options
Diffstat (limited to 'drivers/net/niu.c')
-rw-r--r-- | drivers/net/niu.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/niu.c b/drivers/net/niu.c index af9a8647c7e8..7b52d9762b00 100644 --- a/drivers/net/niu.c +++ b/drivers/net/niu.c | |||
@@ -6369,7 +6369,7 @@ static void niu_set_rx_mode(struct net_device *dev) | |||
6369 | np->flags &= ~(NIU_FLAGS_MCAST | NIU_FLAGS_PROMISC); | 6369 | np->flags &= ~(NIU_FLAGS_MCAST | NIU_FLAGS_PROMISC); |
6370 | if (dev->flags & IFF_PROMISC) | 6370 | if (dev->flags & IFF_PROMISC) |
6371 | np->flags |= NIU_FLAGS_PROMISC; | 6371 | np->flags |= NIU_FLAGS_PROMISC; |
6372 | if ((dev->flags & IFF_ALLMULTI) || (dev->mc_count > 0)) | 6372 | if ((dev->flags & IFF_ALLMULTI) || (!netdev_mc_empty(dev))) |
6373 | np->flags |= NIU_FLAGS_MCAST; | 6373 | np->flags |= NIU_FLAGS_MCAST; |
6374 | 6374 | ||
6375 | alt_cnt = netdev_uc_count(dev); | 6375 | alt_cnt = netdev_uc_count(dev); |
@@ -6412,7 +6412,7 @@ static void niu_set_rx_mode(struct net_device *dev) | |||
6412 | if (dev->flags & IFF_ALLMULTI) { | 6412 | if (dev->flags & IFF_ALLMULTI) { |
6413 | for (i = 0; i < 16; i++) | 6413 | for (i = 0; i < 16; i++) |
6414 | hash[i] = 0xffff; | 6414 | hash[i] = 0xffff; |
6415 | } else if (dev->mc_count > 0) { | 6415 | } else if (!netdev_mc_empty(dev)) { |
6416 | for (addr = dev->mc_list; addr; addr = addr->next) { | 6416 | for (addr = dev->mc_list; addr; addr = addr->next) { |
6417 | u32 crc = ether_crc_le(ETH_ALEN, addr->da_addr); | 6417 | u32 crc = ether_crc_le(ETH_ALEN, addr->da_addr); |
6418 | 6418 | ||