diff options
Diffstat (limited to 'drivers/net/hp100.c')
-rw-r--r-- | drivers/net/hp100.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/hp100.c b/drivers/net/hp100.c index 0c2f2e8b1c47..debac1bc6799 100644 --- a/drivers/net/hp100.c +++ b/drivers/net/hp100.c | |||
@@ -2090,7 +2090,7 @@ static void hp100_set_multicast_list(struct net_device *dev) | |||
2090 | lp->mac2_mode = HP100_MAC2MODE6; /* promiscuous mode = get all good */ | 2090 | lp->mac2_mode = HP100_MAC2MODE6; /* promiscuous mode = get all good */ |
2091 | lp->mac1_mode = HP100_MAC1MODE6; /* packets on the net */ | 2091 | lp->mac1_mode = HP100_MAC1MODE6; /* packets on the net */ |
2092 | memset(&lp->hash_bytes, 0xff, 8); | 2092 | memset(&lp->hash_bytes, 0xff, 8); |
2093 | } else if (dev->mc_count || (dev->flags & IFF_ALLMULTI)) { | 2093 | } else if (!netdev_mc_empty(dev) || (dev->flags & IFF_ALLMULTI)) { |
2094 | lp->mac2_mode = HP100_MAC2MODE5; /* multicast mode = get packets for */ | 2094 | lp->mac2_mode = HP100_MAC2MODE5; /* multicast mode = get packets for */ |
2095 | lp->mac1_mode = HP100_MAC1MODE5; /* me, broadcasts and all multicasts */ | 2095 | lp->mac1_mode = HP100_MAC1MODE5; /* me, broadcasts and all multicasts */ |
2096 | #ifdef HP100_MULTICAST_FILTER /* doesn't work!!! */ | 2096 | #ifdef HP100_MULTICAST_FILTER /* doesn't work!!! */ |
@@ -2104,9 +2104,10 @@ static void hp100_set_multicast_list(struct net_device *dev) | |||
2104 | 2104 | ||
2105 | memset(&lp->hash_bytes, 0x00, 8); | 2105 | memset(&lp->hash_bytes, 0x00, 8); |
2106 | #ifdef HP100_DEBUG | 2106 | #ifdef HP100_DEBUG |
2107 | printk("hp100: %s: computing hash filter - mc_count = %i\n", dev->name, dev->mc_count); | 2107 | printk("hp100: %s: computing hash filter - mc_count = %i\n", |
2108 | dev->name, netdev_mc_count(dev)); | ||
2108 | #endif | 2109 | #endif |
2109 | for (i = 0, dmi = dev->mc_list; i < dev->mc_count; i++, dmi = dmi->next) { | 2110 | for (i = 0, dmi = dev->mc_list; i < netdev_mc_count(dev); i++, dmi = dmi->next) { |
2110 | addrs = dmi->dmi_addr; | 2111 | addrs = dmi->dmi_addr; |
2111 | if ((*addrs & 0x01) == 0x01) { /* multicast address? */ | 2112 | if ((*addrs & 0x01) == 0x01) { /* multicast address? */ |
2112 | #ifdef HP100_DEBUG | 2113 | #ifdef HP100_DEBUG |