Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756248AbbLAOis (ORCPT ); Tue, 1 Dec 2015 09:38:48 -0500 Received: from mail-pa0-f49.google.com ([209.85.220.49]:34412 "EHLO mail-pa0-f49.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755216AbbLAOiq (ORCPT ); Tue, 1 Dec 2015 09:38:46 -0500 Message-ID: <1448980723.25582.24.camel@edumazet-glaptop2.roam.corp.google.com> Subject: Re: memory leak in do_ipv6_setsockopt From: Eric Dumazet To: Daniel Borkmann Cc: Dmitry Vyukov , "David S. Miller" , Alexey Kuznetsov , James Morris , Hideaki YOSHIFUJI , Patrick McHardy , netdev , LKML , Vlad Yasevich , Neil Horman , linux-sctp@vger.kernel.org, syzkaller , Kostya Serebryany , Alexander Potapenko , Sasha Levin , Eric Dumazet Date: Tue, 01 Dec 2015 06:38:43 -0800 In-Reply-To: <565DAD8D.9020800@iogearbox.net> References: <1448977016.25582.18.camel@edumazet-glaptop2.roam.corp.google.com> <565DA9BE.3060006@iogearbox.net> <1448979404.25582.23.camel@edumazet-glaptop2.roam.corp.google.com> <565DAD8D.9020800@iogearbox.net> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.4-0ubuntu2 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 970 Lines: 29 On Tue, 2015-12-01 at 15:24 +0100, Daniel Borkmann wrote: > On 12/01/2015 03:16 PM, Eric Dumazet wrote: > > On Tue, 2015-12-01 at 15:07 +0100, Daniel Borkmann wrote: > > > >> Yeah, we miss inet6_destroy_sock() in SCTP. :-( > >> > >> Looks good to me. > > > > OK, I will send a formal (and tested ;) ) patch. > > I was shortly wondering whether there could be a use-after-free by > doing this after sctp_destroy_sock() due to the sctp_endpoint_destroy() > that would eventually drop a ref on the socket, but the endpoint holds > a separate ref, so we should be good. > More generically ->destroy() caller must keep a reference on the socket. inet_csk_destroy_sock() for example uses sk after sk->sk_prot->destroy(sk); -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/