diff options
Diffstat (limited to 'net/ipv6/mcast.c')
-rw-r--r-- | net/ipv6/mcast.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c index 331d728c2035..17d7318ff7bf 100644 --- a/net/ipv6/mcast.c +++ b/net/ipv6/mcast.c | |||
@@ -903,9 +903,7 @@ int ipv6_dev_mc_inc(struct net_device *dev, struct in6_addr *addr) | |||
903 | return -ENOMEM; | 903 | return -ENOMEM; |
904 | } | 904 | } |
905 | 905 | ||
906 | init_timer(&mc->mca_timer); | 906 | setup_timer(&mc->mca_timer, igmp6_timer_handler, (unsigned long)mc); |
907 | mc->mca_timer.function = igmp6_timer_handler; | ||
908 | mc->mca_timer.data = (unsigned long) mc; | ||
909 | 907 | ||
910 | ipv6_addr_copy(&mc->mca_addr, addr); | 908 | ipv6_addr_copy(&mc->mca_addr, addr); |
911 | mc->idev = idev; | 909 | mc->idev = idev; |
@@ -2259,14 +2257,12 @@ void ipv6_mc_init_dev(struct inet6_dev *idev) | |||
2259 | write_lock_bh(&idev->lock); | 2257 | write_lock_bh(&idev->lock); |
2260 | rwlock_init(&idev->mc_lock); | 2258 | rwlock_init(&idev->mc_lock); |
2261 | idev->mc_gq_running = 0; | 2259 | idev->mc_gq_running = 0; |
2262 | init_timer(&idev->mc_gq_timer); | 2260 | setup_timer(&idev->mc_gq_timer, mld_gq_timer_expire, |
2263 | idev->mc_gq_timer.data = (unsigned long) idev; | 2261 | (unsigned long)idev); |
2264 | idev->mc_gq_timer.function = &mld_gq_timer_expire; | ||
2265 | idev->mc_tomb = NULL; | 2262 | idev->mc_tomb = NULL; |
2266 | idev->mc_ifc_count = 0; | 2263 | idev->mc_ifc_count = 0; |
2267 | init_timer(&idev->mc_ifc_timer); | 2264 | setup_timer(&idev->mc_ifc_timer, mld_ifc_timer_expire, |
2268 | idev->mc_ifc_timer.data = (unsigned long) idev; | 2265 | (unsigned long)idev); |
2269 | idev->mc_ifc_timer.function = &mld_ifc_timer_expire; | ||
2270 | idev->mc_qrv = MLD_QRV_DEFAULT; | 2266 | idev->mc_qrv = MLD_QRV_DEFAULT; |
2271 | idev->mc_maxdelay = IGMP6_UNSOLICITED_IVAL; | 2267 | idev->mc_maxdelay = IGMP6_UNSOLICITED_IVAL; |
2272 | idev->mc_v1_seen = 0; | 2268 | idev->mc_v1_seen = 0; |