Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Pedro Alves <palves@redhat.com>
To: Sandra Loosemore <sandra@codesourcery.com>
Cc: Paul_Koning@Dell.com, gbenson@redhat.com, gdb@sourceware.org
Subject: Re: GDB now takes 4 minutes to start up with remote gdbserver target
Date: Tue, 28 Jul 2015 22:13:00 -0000	[thread overview]
Message-ID: <55B7FE6E.6090808@redhat.com> (raw)
In-Reply-To: <55B27348.1020104@codesourcery.com>

On 07/24/2015 06:18 PM, Sandra Loosemore wrote:
> On 07/24/2015 10:05 AM, Pedro Alves wrote:
>> On 07/24/2015 04:27 PM, Paul_Koning@Dell.com wrote:
>>
>>> But having sysroot default to target is also a bad idea for lots of other people.  Consider embedded systems: you presumably have stripped images there, but unstripped ones on your build host.
>>
>> But in that scenario, with the old default sysroot, how was gdb finding
>> the binaries on the build host?  The binaries on the equilalent locations
>> on the host's root will certainly not match the embedded/target system's.
>> In that scenario, you must have been pointing the "set sysroot" somewhere
>> local?  And if you do that, nothing changes in 7.10, gdb will still access
>> the files on the local filesystem.
>>
>>  From the discussion so far, it seems that the only case that ends up
>> regressing is the case where the host and target share both the
>> filesystem, and the host/target paths match.  I don't know off hand how to
>> make gdb aware of that automatically.
> 
> There's also the case where the host and target sysroot locations do not 
> match at all.  As I said, this used to work reasonably well for 
> application debugging, where the user isn't interested in debugging 
> shared libraries and doesn't care if the shared library symbol 
> information isn't available to GDB.  

Doesn't care, until she wants to backtrace across code in the shared
library, e.g., across qsort, or until she starts wondering what are
all those ???'s in the backtrace.

> It used to print a helpful message 
> suggesting using "set sysroot" if the user wants the shared library 
> information, instead of hanging on startup with no indication of what 
> the trouble is or how to fix it.  I can't see the new default behavior 
> as an improvement over the old.

I fully agree that those should be fixed.  If GDB had warned giving a
"set sysroot" suggestion, and the slow retrieval was cancelable, would we
be discussing the new default?

> 
>> That seems like enough of a special case that could well be handled
>> by an explicit "set sysroot /" in e.g., the toolchain's system-gdbinit, or
>> by building gdb with "--with-sysroot=/".
> 
> There are a bunch of possible workarounds for this, but why can't we 
> make GDB "just work" by default, as it used to, instead of requiring 
> users to build GDB differently or install a workaround or issue extra 
> commands manually that they didn't used to need at all?

Over the years we kept hearing the same in the other direction -- 'why
do we have to point at copies of local files, or explicitly
do "set sysroot remote:"?  Why isn't "remote:" the default sysroot?
Why doesn't GDB "just work" by default?'

The definition of "just work" here depends on perspective.  We're
just looking at this from different angles.

Thanks,
Pedro Alves


  parent reply	other threads:[~2015-07-28 22:13 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-23 23:21 Sandra Loosemore
2015-07-24  2:39 ` Sandra Loosemore
2015-07-24  8:52   ` Gary Benson
2015-07-24 13:59     ` Sandra Loosemore
2015-07-24 14:08       ` Paul_Koning
2015-07-24 15:11         ` Gary Benson
2015-07-24 15:27           ` Paul_Koning
2015-07-24 16:36             ` Pedro Alves
2015-07-24 16:58               ` Paul_Koning
2015-07-26 20:03               ` Frank Ch. Eigler
2015-07-26 20:06                 ` Jan Kratochvil
2015-07-26 20:50                   ` Frank Ch. Eigler
     [not found]               ` <55B27348.1020104@codesourcery.com>
2015-07-27 12:22                 ` Gary Benson
2015-07-28  9:25                   ` Gary Benson
2015-07-28 15:22                     ` Sandra Loosemore
2015-07-29 10:00                       ` Gary Benson
2015-07-28 15:38                     ` Gary Benson
2015-07-28 17:04                     ` Doug Evans
2015-07-28 22:13                 ` Pedro Alves [this message]
2015-07-29  1:32                   ` Sandra Loosemore
2015-07-28 16:55     ` Doug Evans
2015-07-28 22:14       ` Pedro Alves
2015-07-29 10:39         ` Gary Benson
2015-07-29 10:15       ` Gary Benson
2015-07-24 10:34   ` Gary Benson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55B7FE6E.6090808@redhat.com \
    --to=palves@redhat.com \
    --cc=Paul_Koning@Dell.com \
    --cc=gbenson@redhat.com \
    --cc=gdb@sourceware.org \
    --cc=sandra@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox