diff options
Diffstat (limited to 'net/ipv6/anycast.c')
-rw-r--r-- | net/ipv6/anycast.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/net/ipv6/anycast.c b/net/ipv6/anycast.c index f6881d7a0385..a9604764e015 100644 --- a/net/ipv6/anycast.c +++ b/net/ipv6/anycast.c | |||
@@ -56,7 +56,7 @@ ip6_onlink(struct in6_addr *addr, struct net_device *dev) | |||
56 | int onlink; | 56 | int onlink; |
57 | 57 | ||
58 | onlink = 0; | 58 | onlink = 0; |
59 | read_lock(&addrconf_lock); | 59 | rcu_read_lock(); |
60 | idev = __in6_dev_get(dev); | 60 | idev = __in6_dev_get(dev); |
61 | if (idev) { | 61 | if (idev) { |
62 | read_lock_bh(&idev->lock); | 62 | read_lock_bh(&idev->lock); |
@@ -68,7 +68,7 @@ ip6_onlink(struct in6_addr *addr, struct net_device *dev) | |||
68 | } | 68 | } |
69 | read_unlock_bh(&idev->lock); | 69 | read_unlock_bh(&idev->lock); |
70 | } | 70 | } |
71 | read_unlock(&addrconf_lock); | 71 | rcu_read_unlock(); |
72 | return onlink; | 72 | return onlink; |
73 | } | 73 | } |
74 | 74 | ||
@@ -335,7 +335,7 @@ int ipv6_dev_ac_inc(struct net_device *dev, struct in6_addr *addr) | |||
335 | write_unlock_bh(&idev->lock); | 335 | write_unlock_bh(&idev->lock); |
336 | 336 | ||
337 | dst_hold(&rt->u.dst); | 337 | dst_hold(&rt->u.dst); |
338 | if (ip6_ins_rt(rt, NULL, NULL, NULL)) | 338 | if (ip6_ins_rt(rt)) |
339 | dst_release(&rt->u.dst); | 339 | dst_release(&rt->u.dst); |
340 | 340 | ||
341 | addrconf_join_solict(dev, &aca->aca_addr); | 341 | addrconf_join_solict(dev, &aca->aca_addr); |
@@ -378,7 +378,7 @@ int __ipv6_dev_ac_dec(struct inet6_dev *idev, struct in6_addr *addr) | |||
378 | addrconf_leave_solict(idev, &aca->aca_addr); | 378 | addrconf_leave_solict(idev, &aca->aca_addr); |
379 | 379 | ||
380 | dst_hold(&aca->aca_rt->u.dst); | 380 | dst_hold(&aca->aca_rt->u.dst); |
381 | if (ip6_del_rt(aca->aca_rt, NULL, NULL, NULL)) | 381 | if (ip6_del_rt(aca->aca_rt)) |
382 | dst_free(&aca->aca_rt->u.dst); | 382 | dst_free(&aca->aca_rt->u.dst); |
383 | else | 383 | else |
384 | dst_release(&aca->aca_rt->u.dst); | 384 | dst_release(&aca->aca_rt->u.dst); |