diff options
Diffstat (limited to 'drivers/net/ioc3-eth.c')
-rw-r--r-- | drivers/net/ioc3-eth.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/net/ioc3-eth.c b/drivers/net/ioc3-eth.c index 318a25a92310..a234e4504522 100644 --- a/drivers/net/ioc3-eth.c +++ b/drivers/net/ioc3-eth.c | |||
@@ -1664,12 +1664,7 @@ static void ioc3_set_multicast_list(struct net_device *dev) | |||
1664 | ip->ehar_l = 0xffffffff; | 1664 | ip->ehar_l = 0xffffffff; |
1665 | } else { | 1665 | } else { |
1666 | netdev_for_each_mc_addr(ha, dev) { | 1666 | netdev_for_each_mc_addr(ha, dev) { |
1667 | char *addr = ha->addr; | 1667 | ehar |= (1UL << ioc3_hash(ha->addr)); |
1668 | |||
1669 | if (!(*addr & 1)) | ||
1670 | continue; | ||
1671 | |||
1672 | ehar |= (1UL << ioc3_hash(addr)); | ||
1673 | } | 1668 | } |
1674 | ip->ehar_h = ehar >> 32; | 1669 | ip->ehar_h = ehar >> 32; |
1675 | ip->ehar_l = ehar & 0xffffffff; | 1670 | ip->ehar_l = ehar & 0xffffffff; |