From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755076AbdEDNyG (ORCPT ); Thu, 4 May 2017 09:54:06 -0400 Received: from shards.monkeyblade.net ([184.105.139.130]:54676 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751326AbdEDNxW (ORCPT ); Thu, 4 May 2017 09:53:22 -0400 Date: Thu, 04 May 2017 09:53:19 -0400 (EDT) Message-Id: <20170504.095319.42169195176229264.davem@davemloft.net> To: andreyknvl@google.com Cc: acme@kernel.org, arnaldo.melo@gmail.com, dvyukov@google.com, gerrit@erg.abdn.ac.uk, dccp@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, edumazet@google.com, xiyou.wangcong@gmail.com, syzkaller@googlegroups.com Subject: Re: net/dccp: dccp_create_openreq_child freed held lock From: David Miller In-Reply-To: References: <20170301153510.GE15145@kernel.org> <20170301154011.GF15145@kernel.org> X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Thu, 04 May 2017 06:11:54 -0700 (PDT) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Andrey Konovalov Date: Thu, 4 May 2017 15:36:37 +0200 > On Wed, Mar 1, 2017 at 4:40 PM, Arnaldo Carvalho de Melo > wrote: >> Em Wed, Mar 01, 2017 at 12:35:10PM -0300, Arnaldo Carvalho de Melo escreveu: >>> Em Wed, Mar 01, 2017 at 10:38:54AM +0100, Dmitry Vyukov escreveu: >>> > Hello, >>> > >>> > I've got the following report while running syzkaller fuzzer on >>> > 86292b33d4b79ee03e2f43ea0381ef85f077c760: >>> > >>> > >>> > It seems that dccp_create_openreq_child needs to unlock the sock if >>> > dccp_feat_activate_values fails. >>> >>> Yeah, can you please use the patch below, that mimics the error paths in >>> sk_clone_new(), from where I think even the comment about it being a raw >> >> Argh, s/sk_clone_new()/sk_clone_lock()/g > > Hi Arnaldo, > > Could you send the patch? > > We haven't seen these reports since we applied it. It isn't necessary in the current tree. Arnaldo created a helper sk_free_unlock_clone() which handles this situation properly, and calls it from dccp_create_openreq_child().