net: ep93xx_eth stops receiving packets
[safe/jmp/linux-2.6] / drivers / net / niu.c
index 5e604e3..d5cd16b 100644 (file)
@@ -25,6 +25,7 @@
 #include <linux/jiffies.h>
 #include <linux/crc32.h>
 #include <linux/list.h>
+#include <linux/slab.h>
 
 #include <linux/io.h>
 
@@ -6365,7 +6366,7 @@ static void niu_set_rx_mode(struct net_device *dev)
                for (i = 0; i < 16; i++)
                        hash[i] = 0xffff;
        } else if (!netdev_mc_empty(dev)) {
-               for (addr = dev->mc_list; addr; addr = addr->next) {
+               netdev_for_each_mc_addr(addr, dev) {
                        u32 crc = ether_crc_le(ETH_ALEN, addr->da_addr);
 
                        crc >>= 24;