From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18071 invoked by alias); 12 Aug 2015 12:51:34 -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 17790 invoked by uid 89); 12 Aug 2015 12:51:33 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.4 required=5.0 tests=AWL,BAYES_00,KAM_LAZY_DOMAIN_SECURITY,RP_MATCHES_RCVD,SPF_HELO_PASS 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, 12 Aug 2015 12:51:33 +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 (Postfix) with ESMTPS id EC50C91FE7; Wed, 12 Aug 2015 12:51:31 +0000 (UTC) Received: from [127.0.0.1] (ovpn01.gateway.prod.ext.ams2.redhat.com [10.39.146.11]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t7CCpSuo005081; Wed, 12 Aug 2015 08:51:29 -0400 Message-ID: <55CB4150.6090807@redhat.com> Date: Wed, 12 Aug 2015 12:51:00 -0000 From: Pedro Alves User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: Gary Benson CC: Joel Brobecker , Doug Evans , Jan Kratochvil , gdb-patches , Sandra Loosemore , =?windows-1252?Q?Andr=E9_P=F6nitz?= , Paul Koning Subject: Re: [PATCH 0/2] Better handling of slow remote transfers References: <001a11c301b0388ac5051d0c5ab8@google.com> <20150811185519.GA28644@host1.jankratochvil.net> <20150811195943.GC22245@adacore.com> <20150812094831.GD11096@blade.nx> <55CB1B8D.6010501@redhat.com> <20150812103831.GA12792@blade.nx> <55CB2DF8.2050506@redhat.com> <20150812123254.GA14726@blade.nx> In-Reply-To: <20150812123254.GA14726@blade.nx> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-SW-Source: 2015-08/txt/msg00278.txt.bz2 On 08/12/2015 01:32 PM, Gary Benson wrote: > Pedro Alves wrote: >> On 08/12/2015 11:38 AM, Gary Benson wrote: >>> It seems like you're saying this series is a big change, but it's >>> really not: the core of it is that little snippet of logic, which >>> is easy enough to reason about: >>> >>> IF target filesystem is remote >>> AND auto_target_prefix is enabled >>> AND no sysroot is set >>> AND (we're looking for an executable >>> OR we're looking for a solib loaded by a target-prefixed executable): >>> Prefix the filename with "target:" >>> >> >> IIUC, it still auto fetches the executable and then the solibs from >> the target by default (e.g., after "attach"), so still subject to >> lack of interruptibility? > > Yes and no. It will fetch the executable from the remote iff one has > not been otherwise specified (i.e. by "file", or on the command line). > It will *only* fetch libraries from the remote if the parent executable > has a target prefix. So: > > (gdb) file a.out > (gdb) target remote :9999 > > - exec_filename is "a.out" > - exec_filename has no "target:" prefix > - "target:" prefix is NOT applied to shared libraries > - solib paths end up as "/path/to/libsolib.so.1" > - solibs are NOT fetched over RSP > But to me it looks like GDB _should_ retrieve the libraries out of the target in this case. You'll usually have a local copy of the executable, because you just compiled it, but not of the shared libraries. It seems to me we're only considering this option because we didn't make transfers interruptible? >> I was only OK with trying to make transfers interruptible in the >> branch assuming it was something non-invasive, like a missing QUIT >> here and there. > > No, gdbserver sends the data in PBUFSIZ chunks, but GDB reads the > data a character at a time. Can you expand on this? What code is it that reads the data a character at a time? What data is gdb getting at when it does that? Thanks, Pedro Alves