From patchwork Wed Apr 15 13:55:55 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gary Benson X-Patchwork-Id: 6232 Received: (qmail 52857 invoked by alias); 15 Apr 2015 13:56:02 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 52845 invoked by uid 89); 15 Apr 2015 13:56:02 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.6 required=5.0 tests=AWL, BAYES_00, KAM_LAZY_DOMAIN_SECURITY, SPF_HELO_PASS, T_RP_MATCHES_RCVD autolearn=no 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 13:56:00 +0000 Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id t3FDtvgG030059 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Wed, 15 Apr 2015 09:55:57 -0400 Received: from blade.nx (ovpn-116-95.ams2.redhat.com [10.36.116.95]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t3FDtuc8032195; Wed, 15 Apr 2015 09:55:56 -0400 Received: by blade.nx (Postfix, from userid 1000) id 910C9263FB7; Wed, 15 Apr 2015 14:55:55 +0100 (BST) Date: Wed, 15 Apr 2015 14:55:55 +0100 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: <20150415135555.GA18079@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> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <552E3C6B.2090300@redhat.com> X-IsSubscribed: yes 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