From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.linuxfoundation.org ([140.211.169.12]:53160 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751002AbdEaAPx (ORCPT ); Tue, 30 May 2017 20:15:53 -0400 Subject: Patch "dccp/tcp: do not inherit mc_list from parent" has been added to the 4.11-stable tree To: edumazet@google.com, andreyknvl@google.com, davem@davemloft.net, gregkh@linuxfoundation.org, pray3r.z@gmail.com Cc: , From: Date: Wed, 31 May 2017 09:14:14 +0900 Message-ID: <14961896545048@kroah.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ANSI_X3.4-1968 Content-Transfer-Encoding: 8bit Sender: stable-owner@vger.kernel.org List-ID: 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 4.11-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-4.11 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let know about it. >>From foo@baz Wed May 31 09:13:10 JST 2017 From: Eric Dumazet Date: Tue, 9 May 2017 06:29:19 -0700 Subject: dccp/tcp: do not inherit mc_list from parent From: Eric Dumazet [ 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 Reported-by: Pray3r Reported-by: Andrey Konovalov Tested-by: Andrey Konovalov Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- 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 @@ -794,6 +794,8 @@ struct sock *inet_csk_clone_lock(const s /* listeners have SOCK_RCU_FREE, not the children */ sock_reset_flag(newsk, SOCK_RCU_FREE); + inet_sk(newsk)->mc_list = NULL; + newsk->sk_mark = inet_rsk(req)->ir_mark; atomic64_set(&newsk->sk_cookie, atomic64_read(&inet_rsk(req)->ir_cookie)); Patches currently in stable-queue which might be from edumazet@google.com are queue-4.11/ipv6-fix-out-of-bound-writes-in-__ip6_append_data.patch queue-4.11/tcp-eliminate-negative-reordering-in-tcp_clean_rtx_queue.patch queue-4.11/dccp-tcp-do-not-inherit-mc_list-from-parent.patch queue-4.11/tcp-avoid-fragmenting-peculiar-skbs-in-sack.patch queue-4.11/netem-fix-skb_orphan_partial.patch queue-4.11/net-fix-compile-error-in-skb_orphan_partial.patch queue-4.11/ipv6-dccp-do-not-inherit-ipv6_mc_list-from-parent.patch queue-4.11/sctp-do-not-inherit-ipv6_-mc-ac-fl-_list-from-parent.patch queue-4.11/ipv4-add-reference-counting-to-metrics.patch queue-4.11/tcp-avoid-fastopen-api-to-be-used-on-af_unspec.patch