diff options
author | David Stevens <dlstevens@us.ibm.com> | 2007-02-26 16:28:56 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2007-08-09 14:27:46 -0700 |
commit | 05b1ed7990f79388573430faf4f28c31eeaf377b (patch) | |
tree | 1b7941689c7301064fd8d32d32e5d52f6d132913 | |
parent | 6b870a3938061b49a19b2e76ae1ddec967e6fb0f (diff) | |
download | lwn-05b1ed7990f79388573430faf4f28c31eeaf377b.tar.gz lwn-05b1ed7990f79388573430faf4f28c31eeaf377b.zip |
IPV6: /proc/net/anycast6 unbalanced inet6_dev refcnt
Reading /proc/net/anycast6 when there is no anycast address
on an interface results in an ever-increasing inet6_dev reference
count, as well as a reference to the netdevice you can't get rid of.
Signed-off-by: David S. Miller <davem@davemloft.net>
Cc: Marcus Meissner <meissner@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | net/ipv6/anycast.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv6/anycast.c b/net/ipv6/anycast.c index 9b81264eb78f..2f49578e52a1 100644 --- a/net/ipv6/anycast.c +++ b/net/ipv6/anycast.c @@ -66,6 +66,7 @@ ip6_onlink(struct in6_addr *addr, struct net_device *dev) break; } read_unlock_bh(&idev->lock); + in6_dev_put(idev); } rcu_read_unlock(); return onlink; |