]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
net/ipv6: Correct PIM6 mrt_lock handling
authorRichard Laing <richard.laing@alliedtelesis.co.nz>
Thu, 3 Sep 2015 01:52:31 +0000 (13:52 +1200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 1 Oct 2015 10:07:38 +0000 (12:07 +0200)
commit02b5ca779d6d15b3af9ea79e1be6e9eb1636f286
treef4be1fc6d0894f8db35911d87e0a2db16fd4ee61
parent162e3d1c34b0c7b4a2bd016332b48c171a926965
net/ipv6: Correct PIM6 mrt_lock handling

[ Upstream commit 25b4a44c19c83d98e8c0807a7ede07c1f28eab8b ]

In the IPv6 multicast routing code the mrt_lock was not being released
correctly in the MFC iterator, as a result adding or deleting a MIF would
cause a hang because the mrt_lock could not be acquired.

This fix is a copy of the code for the IPv4 case and ensures that the lock
is released correctly.

Signed-off-by: Richard Laing <richard.laing@alliedtelesis.co.nz>
Acked-by: Cong Wang <cwang@twopensource.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/ipv6/ip6mr.c