]> git.baikalelectronics.ru Git - kernel.git/commit
igmp: do not remove igmp souce list info when set link down
authorHangbin Liu <liuhangbin@gmail.com>
Mon, 14 Nov 2016 08:16:28 +0000 (16:16 +0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 16 Nov 2016 00:51:16 +0000 (19:51 -0500)
commit0c3cf35965be473bf7eb70f03f18fa545cff01a6
tree8b8889b8b095a7a9330f9db27846a4cd64956436
parent219d96bed82452ba50aa18872b00f821a9fa7c7a
igmp: do not remove igmp souce list info when set link down

In commit 2216143d49ee ("igmp: call ip_mc_clear_src..."), we forgot to remove
igmpv3_clear_delrec() in ip_mc_down(), which also called ip_mc_clear_src().
This make us clear all IGMPv3 source filter info after NETDEV_DOWN.
Move igmpv3_clear_delrec() to ip_mc_destroy_dev() and then no need
ip_mc_clear_src() in ip_mc_destroy_dev().

On the other hand, we should restore back instead of free all source filter
info in igmpv3_del_delrec(). Or we will not able to restore IGMPv3 source
filter info after NETDEV_UP and NETDEV_POST_TYPE_CHANGE.

Fixes: 2216143d49ee ("igmp: call ip_mc_clear_src() only when ...")
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/igmp.c