This is a note to let you know that I've just added the patch titled dccp/tcp: do not inherit mc_list from parent to the 3.18-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: dccp-tcp-do-not-inherit-mc_list-from-parent.patch and it can be found in the queue-3.18 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From foo@baz Fri Jun 2 12:04:25 JST 2017 From: Eric Dumazet <edumazet@xxxxxxxxxx> Date: Tue, 9 May 2017 06:29:19 -0700 Subject: dccp/tcp: do not inherit mc_list from parent From: Eric Dumazet <edumazet@xxxxxxxxxx> [ Upstream commit 657831ffc38e30092a2d5f03d385d710eb88b09a ] syzkaller found a way to trigger double frees from ip_mc_drop_socket() It turns out that leave a copy of parent mc_list at accept() time, which is very bad. Very similar to commit 8b485ce69876 ("tcp: do not inherit fastopen_req from parent") Initial report from Pray3r, completed by Andrey one. Thanks a lot to them ! Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx> Reported-by: Pray3r <pray3r.z@xxxxxxxxx> Reported-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx> Tested-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx> Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- net/ipv4/inet_connection_sock.c | 2 ++ 1 file changed, 2 insertions(+) --- a/net/ipv4/inet_connection_sock.c +++ b/net/ipv4/inet_connection_sock.c @@ -677,6 +677,8 @@ struct sock *inet_csk_clone_lock(const s inet_sk(newsk)->inet_sport = htons(inet_rsk(req)->ir_num); newsk->sk_write_space = sk_stream_write_space; + inet_sk(newsk)->mc_list = NULL; + newsk->sk_mark = inet_rsk(req)->ir_mark; newicsk->icsk_retransmits = 0; Patches currently in stable-queue which might be from edumazet@xxxxxxxxxx are queue-3.18/sctp-do-not-inherit-ipv6_-mc-ac-fl-_list-from-parent.patch queue-3.18/tcp-avoid-fastopen-api-to-be-used-on-af_unspec.patch queue-3.18/tcp-eliminate-negative-reordering-in-tcp_clean_rtx_queue.patch queue-3.18/netem-fix-skb_orphan_partial.patch queue-3.18/dccp-tcp-do-not-inherit-mc_list-from-parent.patch queue-3.18/tcp-avoid-fragmenting-peculiar-skbs-in-sack.patch queue-3.18/ipv6-fix-out-of-bound-writes-in-__ip6_append_data.patch