From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 90768 invoked by alias); 15 Apr 2015 14:06:03 -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 90758 invoked by uid 89); 15 Apr 2015 14:06:02 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.1 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Wed, 15 Apr 2015 14:06:01 +0000 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (Postfix) with ESMTPS id 8941AA10C3; Wed, 15 Apr 2015 14:06:00 +0000 (UTC) Received: from blade.nx (ovpn-116-95.ams2.redhat.com [10.36.116.95]) by int-mx11.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t3FE5x5Z013188; Wed, 15 Apr 2015 10:06:00 -0400 Received: by blade.nx (Postfix, from userid 1000) id 0970A263FB7; Wed, 15 Apr 2015 15:05:58 +0100 (BST) Date: Wed, 15 Apr 2015 14:06:00 -0000 From: Gary Benson To: Pedro Alves , Eli Zaretskii Cc: gdb-patches@sourceware.org Subject: Re: [PATCH 7/7] Access executable from remote system when first inferior appears Message-ID: <20150415140558.GA20939@blade.nx> References: <1427887341-31819-1-git-send-email-gbenson@redhat.com> <1427887341-31819-8-git-send-email-gbenson@redhat.com> <552E3C6B.2090300@redhat.com> <20150415135555.GA18079@blade.nx> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150415135555.GA18079@blade.nx> X-IsSubscribed: yes X-SW-Source: 2015-04/txt/msg00565.txt.bz2 Gary Benson wrote: > Pedro Alves wrote: > > On 04/01/2015 12:22 PM, Gary Benson wrote: > > > This commit modifies remote_add_inferior to take an extra argument > > > try_open_exec. If this is nonzero, remote_add_inferior will > > > attempt to open this inferior's executable as the main executable > > > if no main executable is open already. Callers are updated > > > appropriately. > > > > > > One testcase required updating as a result of this commit. The > > > test checked that GDB's "info files" command does not crash if no > > > main executable is open, and relied on GDB's inability to access > > > the main executable over the remote protocol. The test was > > > updated to inhibit this new behavior. > > > > So this is significant user-visible change too. I think it deserves > > an example in the commit log, and a NEWS entry. The manual should > > probably be updated to explain/mention this too. We already mention > > something like this in the "attach" docs: > > > > "When you use @code{attach}, the debugger finds the program running in > > the process first (...)" > > How about these? > > diff --git a/gdb/NEWS b/gdb/NEWS > index b11a6fc..e88210f 100644 > --- a/gdb/NEWS > +++ b/gdb/NEWS > @@ -36,6 +36,11 @@ > the operating system) when starting processes remotely, and when > attaching to already-running local or remote processes. > > +* GDB now supports automatic location and retrieval of executable > + files from remote targets. Remote debugging can now be initiated > + using only a "target remote" or "target extended-remote" command > + (no "set sysroot" or "file" commands are required). > + > * Python Scripting > > ** gdb.Objfile objects have a new attribute "username", > diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo > index 964f9c4..4f9c21b 100644 > --- a/gdb/doc/gdb.texinfo > +++ b/gdb/doc/gdb.texinfo > @@ -2531,7 +2531,8 @@ programs on bare-board targets that lack an operating system. You must > also have permission to send the process a signal. > > When you use @code{attach}, the debugger finds the program running in > -the process first by looking in the current working directory, then (if > +the process first by querying the operating system. If this fails, > +@value{GDBN} looks first in the current working directory, then (if > the program is not found) by using the source file search path > (@pxref{Source Path, ,Specifying Source Directories}). You can also use > the @code{file} command to load the program. @xref{Files, ,Commands to Also, I added this to the commit message: With this commit, remote debugging can now be initiated using only a "target remote" or "target extended-remote" command; no "set sysroot" or "file" commands are required, e.g. bash$ gdb -q (gdb) target remote | gdbserver - /bin/sh Remote debugging using | gdbserver - /bin/sh Process /bin/sh created; pid = 32166 stdin/stdout redirected Remote debugging using stdio Reading symbols from target:/bin/bash... Is that ok? Cheers, Gary -- http://gbenson.net/