From: Sandra Loosemore <sandra@codesourcery.com>
To: Gary Benson <gbenson@redhat.com>
Cc: "gdb@sourceware.org" <gdb@sourceware.org>
Subject: Re: GDB now takes 4 minutes to start up with remote gdbserver target
Date: Fri, 24 Jul 2015 13:59:00 -0000 [thread overview]
Message-ID: <55B2444C.106@codesourcery.com> (raw)
In-Reply-To: <20150724085244.GB22673@blade.nx>
On 07/24/2015 02:52 AM, Gary Benson wrote:
>
> A large part of the motivation for these patches was to automate as
> much as possible so users did not have to tell GDB stuff it could
> figure out itself. Rather than reverting (the nuclear option!)
> how about we see if we can make GDB handle this.
>
> How were you debugging before these series went in? Without symbols?
> If you'd started GDB with "file" and "set sysroot" commands to set up
> your environment the whole remote-fetch should not have happened.
I am passing the executable to GDB on the command line. The executable
is linked with explicit -Wl,-dynamic-linker= and -Wl,-rpath options
pointing to a sysroot that is NFS-mounted on the remote target at the
same pathname as on the host system. (This is our normal automated test
configuration here, BTW.... I was trying to investigate why mainline
GDB testing now takes 12 hours versus 38 minutes for our last stable
release, and quickly realized that GDB's current behavior is going to be
totally unacceptable for interactive use as well.)
The user documentation we at Mentor distribute with our toolchains that
explains sysroots says that you only need to do "set sysroot" in the
debugger if you are interested in debugging shared libraries or
multi-threaded applications, *and* the remote sysroot pathname is not
valid on the host system. Neither of these things applies to what I was
trying to do. Plus, generally speaking, if you fail to do "set sysroot"
in older GDB versions, application debugging still works even if there
is a mismatch in the sysroot pathnames between host and target.... you
just get some messages now and then about how GDB couldn't find some
shared library symbols, and suggesting that you try "set sysroot".
What I find particularly confusing is that continuing to main doesn't
seem like a user action that requires information from the sysroot at
all. I have not set any breakpoints in shared libraries, I'm not trying
to backtrace through a library call, and I haven't requested that GDB
stop on solib events. Why does GDB need to transfer these files from
the target at all if the user is not interested in them?
> I'll look into some combination of making the remote transfer
> interruptable, and issuing a warning during slow transfers, to
> see if something like that could work. Could you update the
> manual to add the information that you would have like to have
> found there?
I'd rather that we fix GDB to "just work", as it used to do, rather than
have to document workarounds for this breakage.
-Sandra
next prev parent reply other threads:[~2015-07-24 13:59 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 [this message]
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
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=55B2444C.106@codesourcery.com \
--to=sandra@codesourcery.com \
--cc=gbenson@redhat.com \
--cc=gdb@sourceware.org \
/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