From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18809 invoked by alias); 29 Aug 2013 14:17:45 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 18800 invoked by uid 89); 29 Aug 2013 14:17:44 -0000 Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 29 Aug 2013 14:17:44 +0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-6.0 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r7TEHgW3022396 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Thu, 29 Aug 2013 10:17:42 -0400 Received: from [127.0.0.1] (ovpn01.gateway.prod.ext.ams2.redhat.com [10.39.146.11]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r7TEHfAK029907; Thu, 29 Aug 2013 10:17:41 -0400 Message-ID: <521F5804.1080604@redhat.com> Date: Thu, 29 Aug 2013 14:17:00 -0000 From: Pedro Alves User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130625 Thunderbird/17.0.7 MIME-Version: 1.0 To: Jan Kratochvil CC: gdb-patches@sourceware.org Subject: Re: [patch gdbserver 7.6.1 only] Fix fd leak regression References: <20130829111053.GA25662@host2.jankratochvil.net> <521F3B71.1010007@redhat.com> <20130829130359.GA31063@host2.jankratochvil.net> In-Reply-To: <20130829130359.GA31063@host2.jankratochvil.net> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-SW-Source: 2013-08/txt/msg00868.txt.bz2 On 08/29/2013 02:03 PM, Jan Kratochvil wrote: > On Thu, 29 Aug 2013 14:15:45 +0200, Pedro Alves wrote: >> (We could also just mark the sockets as SOCK_CLOEXEC, I think? >> Though that's "only" since Linux 2.6.27, so I've no objection with >> going this route.) > > * There is no real need for SOCK_CLOEXEC, GDB benefits from it for Python > threads (possibly calling their own fork+exec) but those do not happen for > gdbserver. I suspect we'll have to revisit this at some point (years from now), but yeah, agreed. > > * It would not work for old/non-Linux OSes which does not matter much but it > is still rather a disadvantage. *nod* > gdb/gdbserver/ > 2013-08-29 Jan Kratochvil > > PR server/15604 > * linux-low.c > (linux_create_inferior) : > Close LISTEN_DESC and optionally REMOTE_DESC. > (lynx_create_inferior) : > Close LISTEN_DESC and optionally REMOTE_DESC. > * remote-utils.c (remote_desc, listen_desc): Remove static qualifier. > * server.h (remote_desc, listen_desc): New declaration. > * spu-low.c > (spu_create_inferior) : > Close LISTEN_DESC and optionally REMOTE_DESC. Thanks, this looks good to me. > +set test "system fd behavior is known" > +set status [remote_exec target "[standard_output_file $testfile]"] > +if { [lindex $status 0] == 0 } { > + pass $test > +} else { > + fail $test > +} > +remote_exec target "ls -l /proc/self/fd/" Before gdbserver's fix, do we get one extra fd from the dejagnu leak, and another extra from gdbserver's leak? What if we made $testfile count open fds, and then compare that between running under gdb/gdbserver and just under remote_exec ? -- Pedro Alves