diff options
Diffstat (limited to 'drivers/net/via-rhine.c')
| -rw-r--r-- | drivers/net/via-rhine.c | 5 | 
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/via-rhine.c b/drivers/net/via-rhine.c index a7e0c84426e..85df7ac636b 100644 --- a/drivers/net/via-rhine.c +++ b/drivers/net/via-rhine.c @@ -1697,7 +1697,7 @@ static void rhine_set_rx_mode(struct net_device *dev)  		rx_mode = 0x1C;  		iowrite32(0xffffffff, ioaddr + MulticastFilter0);  		iowrite32(0xffffffff, ioaddr + MulticastFilter1); -	} else if ((dev->mc_count > multicast_filter_limit) || +	} else if ((netdev_mc_count(dev) > multicast_filter_limit) ||  		   (dev->flags & IFF_ALLMULTI)) {  		/* Too many to match, or accept all multicasts. */  		iowrite32(0xffffffff, ioaddr + MulticastFilter0); @@ -1707,7 +1707,8 @@ static void rhine_set_rx_mode(struct net_device *dev)  		struct dev_mc_list *mclist;  		int i;  		memset(mc_filter, 0, sizeof(mc_filter)); -		for (i = 0, mclist = dev->mc_list; mclist && i < dev->mc_count; +		for (i = 0, mclist = dev->mc_list; +		     mclist && i < netdev_mc_count(dev);  		     i++, mclist = mclist->next) {  			int bit_nr = ether_crc(ETH_ALEN, mclist->dmi_addr) >> 26;  |