From b72f799afda0c93afd6d4ee9f57f40d3d216cd3e Mon Sep 17 00:00:00 2001 From: Yan Zheng Date: Sun, 20 Nov 2005 13:42:20 -0800 Subject: [PATCH] --- yaml --- r: 14563 b: refs/heads/master c: 5d5780df23537ad0db72267fe11103d2c23d9b2a h: refs/heads/master i: 14561: 330a32d4026197a4a620fe8ff3028cdc8b97bbb0 14559: 392504baa28b00b1d654488590d97e30f66c6625 v: v3 --- [refs] | 2 +- trunk/net/ipv6/addrconf.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 67204a25c53a..49dcb6e76b98 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4909724b5dee8fb7c52bbe90afa40c65b17be9eb +refs/heads/master: 5d5780df23537ad0db72267fe11103d2c23d9b2a diff --git a/trunk/net/ipv6/addrconf.c b/trunk/net/ipv6/addrconf.c index 56a09a4ac410..a16064ba0caf 100644 --- a/trunk/net/ipv6/addrconf.c +++ b/trunk/net/ipv6/addrconf.c @@ -2627,7 +2627,7 @@ static void addrconf_verify(unsigned long foo) for (i=0; i < IN6_ADDR_HSIZE; i++) { restart: - write_lock(&addrconf_hash_lock); + read_lock(&addrconf_hash_lock); for (ifp=inet6_addr_lst[i]; ifp; ifp=ifp->lst_next) { unsigned long age; #ifdef CONFIG_IPV6_PRIVACY @@ -2649,7 +2649,7 @@ static void addrconf_verify(unsigned long foo) if (age >= ifp->valid_lft) { spin_unlock(&ifp->lock); in6_ifa_hold(ifp); - write_unlock(&addrconf_hash_lock); + read_unlock(&addrconf_hash_lock); ipv6_del_addr(ifp); goto restart; } else if (age >= ifp->prefered_lft) { @@ -2668,7 +2668,7 @@ static void addrconf_verify(unsigned long foo) if (deprecate) { in6_ifa_hold(ifp); - write_unlock(&addrconf_hash_lock); + read_unlock(&addrconf_hash_lock); ipv6_ifa_notify(0, ifp); in6_ifa_put(ifp); @@ -2686,7 +2686,7 @@ static void addrconf_verify(unsigned long foo) in6_ifa_hold(ifp); in6_ifa_hold(ifpub); spin_unlock(&ifp->lock); - write_unlock(&addrconf_hash_lock); + read_unlock(&addrconf_hash_lock); ipv6_create_tempaddr(ifpub, ifp); in6_ifa_put(ifpub); in6_ifa_put(ifp); @@ -2703,7 +2703,7 @@ static void addrconf_verify(unsigned long foo) spin_unlock(&ifp->lock); } } - write_unlock(&addrconf_hash_lock); + read_unlock(&addrconf_hash_lock); } addr_chk_timer.expires = time_before(next, jiffies + HZ) ? jiffies + HZ : next;