diff options
author | David S. Miller <davem@davemloft.net> | 2010-11-14 14:57:05 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-11-14 14:57:05 -0500 |
commit | c25ecd0a21d5e08160cb5cc984f9e2b8ee347443 (patch) | |
tree | 0e4dcacf1bf603f259b8d27445a10e60fa8d00d7 /net/ipv4/igmp.c | |
parent | 190683a9d5457e6d962c232ffbecac3ab158dddd (diff) | |
parent | 9457b24a0955bbdd2e89220a75de69fe09501bba (diff) |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Diffstat (limited to 'net/ipv4/igmp.c')
-rw-r--r-- | net/ipv4/igmp.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/net/ipv4/igmp.c b/net/ipv4/igmp.c index 6f49d6c087da..0f0e0f0279b8 100644 --- a/net/ipv4/igmp.c +++ b/net/ipv4/igmp.c | |||
@@ -2307,10 +2307,8 @@ void ip_mc_drop_socket(struct sock *sk) | |||
2307 | inet->mc_list = iml->next_rcu; | 2307 | inet->mc_list = iml->next_rcu; |
2308 | in_dev = inetdev_by_index(net, iml->multi.imr_ifindex); | 2308 | in_dev = inetdev_by_index(net, iml->multi.imr_ifindex); |
2309 | (void) ip_mc_leave_src(sk, iml, in_dev); | 2309 | (void) ip_mc_leave_src(sk, iml, in_dev); |
2310 | if (in_dev != NULL) { | 2310 | if (in_dev != NULL) |
2311 | ip_mc_dec_group(in_dev, iml->multi.imr_multiaddr.s_addr); | 2311 | ip_mc_dec_group(in_dev, iml->multi.imr_multiaddr.s_addr); |
2312 | in_dev_put(in_dev); | ||
2313 | } | ||
2314 | /* decrease mem now to avoid the memleak warning */ | 2312 | /* decrease mem now to avoid the memleak warning */ |
2315 | atomic_sub(sizeof(*iml), &sk->sk_omem_alloc); | 2313 | atomic_sub(sizeof(*iml), &sk->sk_omem_alloc); |
2316 | call_rcu(&iml->rcu, ip_mc_socklist_reclaim); | 2314 | call_rcu(&iml->rcu, ip_mc_socklist_reclaim); |