mld: convert ip6_sf_list to RCU
authorTaehee Yoo <ap420073@gmail.com>
Thu, 25 Mar 2021 16:16:54 +0000 (16:16 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 26 Mar 2021 22:14:56 +0000 (15:14 -0700)
commit4b200e398953c237c86d32bf26d4cb2a96556a6f
tree40febf5ba26cff9106672157f1f3f51612933847
parent882ba1f73c06831f2a21044ebd8864c485ac04f2
mld: convert ip6_sf_list to RCU

The ip6_sf_list has been protected by mca_lock(spin_lock) so that the
critical section is atomic context. In order to switch this context,
changing locking is needed. The ip6_sf_list actually already protected
by RTNL So if it's converted to use RCU, its control path context can
be switched to sleepable.
But It doesn't remove mca_lock yet because ifmcaddr6 isn't converted
to RCU yet. So, It's not fully converted to the sleepable context.

Suggested-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: Taehee Yoo <ap420073@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/if_inet6.h
net/ipv6/mcast.c