From: Pedro Alves <palves@redhat.com>
To: Doug Evans <dje@google.com>, Gary Benson <gbenson@redhat.com>
Cc: Sandra Loosemore <sandra@codesourcery.com>,
"gdb@sourceware.org" <gdb@sourceware.org>
Subject: Re: GDB now takes 4 minutes to start up with remote gdbserver target
Date: Tue, 28 Jul 2015 22:14:00 -0000 [thread overview]
Message-ID: <55B7FEB2.9050608@redhat.com> (raw)
In-Reply-To: <CADPb22S-yeRBtFCroWP6kdCQYXkmJuewwonKVXffGbfTYi5z6A@mail.gmail.com>
On 07/28/2015 05:54 PM, Doug Evans wrote:
> On Fri, Jul 24, 2015 at 1:52 AM, Gary Benson <gbenson@redhat.com> wrote:
>>> (3) Once the "c" command is issued, there's nothing to inform the
>>> user exactly what GDB is doing or that this can be a very slow
>>> operation (e.g., with a progress bar).
>>
>> This is kind of a shortcoming of GDB in general. There was a similar
>> issue relating to tab-completion in programs with lots of symbols:
>>
>> https://sourceware.org/bugzilla/show_bug.cgi?id=11920
>>
>> I don't have a good solution for this.
>
> I'm sure there are fine solutions.
> The problem is getting gdb to a point where
> good solutions fit in easily, without having to
> do something specific for each case.
I agree. I worry much about lots of "smartness" at
the last minute, and then be stuck with it. The "target:" sysroot is
simple to explain and reason about. The new proposal, not so much.
Also, with Aleksandar/Jan's gdbserver build-id validation series
in place, we may be able to come up with a different/better solution.
If resolving the interruptability and adding a suggestive warning
is deemed insufficient resolution (though I think we should try it
first), then I think it's too late to add too much magic, and we should
change the default sysroot back to "" by default. Users can still then
put "set sysroot target:" in .gdbinit with 7.10, and we can continue
addressing identified issues until "target:" (or something around it)
can be made the default, on master.
(Another idea to build on top of this all to minimize downloads is
to have a gdb-side cache of remote file chunks, that persists
across gdb invocations.)
>
>>> While I appreciate that this change may be useful in fixing a class
>>> of user problems, it is an incompatible change from past behavior
>>> and causes a whole different set of problems for users. Can we
>>> please consider restoring the default for "set sysroot" to its
>>> previous behavior?
>>
>> 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.
>
> Being one of my pet peeves, I'm always on the lookout for examples,
> hoping to raise awareness.
> Is this another case of gdb trying to be "clever"
> with no workaround when it's not what one wants?
>
> ref: https://sourceware.org/ml/gdb-patches/2015-07/msg00767.html
I agree.
>
>>
>> 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'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 think just making things interruptable is insufficient.
> We need to make it easy and obvious how to just not start these
> transfers at all.
Agreed.
Thanks,
Pedro Alves
next prev parent reply other threads:[~2015-07-28 22:14 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
2015-07-29 1:32 ` Sandra Loosemore
2015-07-28 16:55 ` Doug Evans
2015-07-28 22:14 ` Pedro Alves [this message]
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=55B7FEB2.9050608@redhat.com \
--to=palves@redhat.com \
--cc=dje@google.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