diff options
author | Julian Anastasov <ja@ssi.bg> | 2015-07-26 13:57:34 +0200 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2015-08-21 18:09:09 +0200 |
commit | e0b26cc997d57305b4097711e12e13992580ae34 (patch) | |
tree | 7f6cfc4c19f8274c8cc9af7fea9379afdff706b5 /net/appletalk | |
parent | ipvs: Add ovf scheduler (diff) | |
download | linux-e0b26cc997d57305b4097711e12e13992580ae34.tar.xz linux-e0b26cc997d57305b4097711e12e13992580ae34.zip |
ipvs: call rtnl_lock early
When the sync damon is started we need to hold rtnl
lock while calling ip_mc_join_group. Currently, we have
a wrong locking order because the correct one is
rtnl_lock->__ip_vs_mutex. It is implied from the usage
of __ip_vs_mutex in ip_vs_dst_event() which is called
under rtnl lock during NETDEV_* notifications.
Fix the problem by calling rtnl_lock early only for the
start_sync_thread call. As a bonus this fixes the usage
__dev_get_by_name which was not called under rtnl lock.
This patch actually extends and depends on commit 54ff9ef36bdf
("ipv4, ipv6: kill ip_mc_{join, leave}_group and
ipv6_sock_mc_{join, drop}").
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'net/appletalk')
0 files changed, 0 insertions, 0 deletions