From: Pedro Alves <pedro@palves.net>
To: Eli Zaretskii <eliz@gnu.org>
Cc: gdb-patches@sourceware.org
Subject: Re: [PATCH 0/2] info breakpoints improvements
Date: Tue, 24 May 2022 14:45:42 +0100 [thread overview]
Message-ID: <724f9c18-2a1f-de3e-b4fc-6c680a20194c@palves.net> (raw)
In-Reply-To: <83h75f5ayf.fsf@gnu.org>
On 2022-05-24 14:14, Eli Zaretskii wrote:
>> Date: Mon, 23 May 2022 18:06:22 +0100
>> Cc: gdb-patches@sourceware.org
>> From: Pedro Alves <pedro@palves.net>
>>
>>>> (top-gdb) info breakpoints
>>>> Num Type Disp Enb Address What
>>>> 1 breakpoint keep y internal_error
>>>> 1.1 y 0x00000000005755a5 in internal_error(char const*, int, char const*, ...) at src/gdb/common/errors.c:54
>>>> 2 breakpoint keep y -qualified internal_error
>>>> 2.1 y 0x00000000005755a5 in internal_error(char const*, int, char const*, ...) at src/gdb/common/errors.c:54
>>>> 3 breakpoint keep y errors.c:54
>>>> 3.1 y 0x00000000005755a5 in internal_error(char const*, int, char const*, ...) at src/gdb/common/errors.c:54
>>>> 3.2 y 0x00007ffff6d50410 in PyErr_SetObject at /usr/src/debug/python2-2.7.15-4.fc27.x86_64/Python/errors.c:54
>>>> 4 breakpoint keep y gdb.c:27
>>>> 4.1 y 0x000055555564107b in main(int, char**) at src/gdb/gdb.c:28
>>>> (top-gdb)
>>>
>>> I must confess that the new display is much more cluttered, and
>>> includes redundant information, so it's harder to read. It also makes
>>> the important stuff harder to find. Why exactly is this deemed as
>>> improvement, and in particular, why would we want this behavior as the
>>> default? (I won't mind to have this as opt-in behavior, if someone
>>> finds this useful in some situations.)
>>
>> None of the information is actually redundant. The "Enb" column shows
>> a different "y", as you can disable a whole breakpoint, or its locations
>> independently.
>
> In the "usual" case, such as the one below:
>
>>>> 4 breakpoint keep y gdb.c:127
>>>> 4.1 y 0x000055555564107b in main(int, char**) at src/gdb/gdb.c:127
>
> one of the two "y"s is redundant, as well as one of the two
> "gdb.c:127"s. And in this case:
>
>>> 1 breakpoint keep y internal_error
>>> 1.1 y 0x00000000005755a5 in internal_error(char const*, int, char const*, ...) at src/gdb/common/errors.c:54
>
> the "internal_error" part of the "header row" is also redundant.
>
Well, with that view, this is very hard to discuss. The example quoted
at the top shows that breakpoints 1 through 3 all have the same breakpoint
location in internal_error at src/gdb/common/errors.c:54 , yet, they were all
specified differently. There is no way to distinguish them in the CLI today.
"internal_error" alone is not a source location, it's just a way to tell
GDB to find the locations where that function exists. It's just a function name.
The source location is the address, filename and line number tuple.
>> The "What" column is showing different things for the breakpoint
>> and its locations.
>
> Different, but in many cases quite similar, with many common parts.
Sure. But not always, and thus I find it important to show the missing
info, so we can tell which is which.
>> So, a more concise display may be interesting, but I'd like to think of it as
>> a separate feature.
>
> It's okay to disagree about user perspectives on what a "concise"
> display should and should not have. I thought that providing the
> perspective of one (heavy) user of GDB on this will help make the
> discussion more objective and balanced. Apologies if that is not
> useful.
I accept your feedback, and concede that it may be interesting to have
a mode that prints a more concise display. But I find it a different feature.
Nothing prevents you or someone else from adding some "info breakpoints -concise"
option. It would be up to debate what exactly does "concise" show, e.g., whether that
would mean we print the breakpoint's commands too, for example. For me, I would like
a flag that only suppresses the locations and nothing else, and that is very easy
to specify (there's no scope for divergence on what "hiding locations" means)
so that's what I am proposing.
next prev parent reply other threads:[~2022-05-24 13:45 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-19 21:55 Pedro Alves
2022-05-19 21:55 ` [PATCH 1/2] Always show locations for breakpoints & show canonical location spec Pedro Alves
2022-05-20 6:45 ` Eli Zaretskii
2022-05-23 17:04 ` [PATCH v2 " Pedro Alves
2022-05-24 13:06 ` Eli Zaretskii
2022-05-25 19:32 ` Pedro Alves
2022-05-26 12:48 ` Eli Zaretskii
2022-05-26 14:04 ` Pedro Alves
2022-05-26 15:03 ` Eli Zaretskii
2022-05-26 15:10 ` Pedro Alves
2022-05-26 15:33 ` Eli Zaretskii
2022-05-26 19:29 ` Pedro Alves
2022-05-26 19:55 ` Eli Zaretskii
2022-05-26 20:40 ` Pedro Alves
2023-04-10 15:07 ` Andrew Burgess
2022-05-20 7:45 ` [PATCH " Metzger, Markus T
2022-05-23 17:05 ` Lancelot SIX
2022-05-19 21:55 ` [PATCH 2/2] Introduce "info breakpoints -hide-locations" Pedro Alves
2022-05-20 6:48 ` Eli Zaretskii
2022-05-20 5:57 ` [PATCH 0/2] info breakpoints improvements Eli Zaretskii
2022-05-23 17:06 ` Pedro Alves
2022-05-24 13:14 ` Eli Zaretskii
2022-05-24 13:45 ` Pedro Alves [this message]
2022-05-24 8:38 ` Luis Machado
2022-05-24 10:02 ` Pedro Alves
2022-05-24 13:20 ` Eli Zaretskii
2022-05-24 13:29 ` Pedro Alves
2022-05-24 13:43 ` Eli Zaretskii
2022-05-24 13:50 ` Pedro Alves
2022-05-24 14:03 ` Eli Zaretskii
2022-05-24 14:09 ` Pedro Alves
2022-05-24 14:25 ` Eli Zaretskii
2022-05-24 14:33 ` Pedro Alves
2022-05-24 14:11 ` Andreas Schwab
2022-05-24 14:17 ` Pedro Alves
2022-05-24 19:49 ` [PATCH] Show enabled locations with disabled breakpoint parent as "y-" (Re: [PATCH 0/2] info breakpoints improvements) Pedro Alves
2022-05-25 13:57 ` Eli Zaretskii
2022-05-25 19:19 ` Pedro Alves
2022-05-24 14:26 ` [PATCH 0/2] info breakpoints improvements Eli Zaretskii
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=724f9c18-2a1f-de3e-b4fc-6c680a20194c@palves.net \
--to=pedro@palves.net \
--cc=eliz@gnu.org \
--cc=gdb-patches@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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).