From: "Schimpe, Christina" <christina.schimpe@intel.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: "gdb-patches@sourceware.org" <gdb-patches@sourceware.org>,
"thiago.bauermann@linaro.org" <thiago.bauermann@linaro.org>
Subject: RE: [PATCH v2 9/9] gdb, mi: Add -shadow-stack-list-frames command
Date: Fri, 13 Feb 2026 19:17:29 +0000 [thread overview]
Message-ID: <SN7PR11MB7638A150CFFE334B3EC82E19F961A@SN7PR11MB7638.namprd11.prod.outlook.com> (raw)
In-Reply-To: <86cy30iun5.fsf@gnu.org>
> -----Original Message-----
> From: Eli Zaretskii <eliz@gnu.org>
> Sent: Freitag, 23. Januar 2026 09:46
> To: Schimpe, Christina <christina.schimpe@intel.com>
> Cc: gdb-patches@sourceware.org; thiago.bauermann@linaro.org
> Subject: Re: [PATCH v2 9/9] gdb, mi: Add -shadow-stack-list-frames command
>
> > From: Christina Schimpe <christina.schimpe@intel.com>
> > Cc: thiago.bauermann@linaro.org
> > Date: Fri, 23 Jan 2026 08:05:31 +0000
> >
> > gdb/NEWS | 10 ++
> > gdb/doc/gdb.texinfo | 47 ++++++
> > gdb/mi/mi-cmd-stack.c | 142 ++++++++++++++++++
> > gdb/mi/mi-cmds.c | 2 +
> > gdb/mi/mi-cmds.h | 1 +
> > gdb/shadow-stack.c | 18 ++-
> > gdb/shadow-stack.h | 11 ++
> > .../gdb.mi/mi-shadow-stack-signal.exp | 69 +++++++++
> > gdb/testsuite/gdb.mi/mi-shadow-stack.exp | 65 ++++++++
> > 9 files changed, 362 insertions(+), 3 deletions(-) create mode
> > 100644 gdb/testsuite/gdb.mi/mi-shadow-stack-signal.exp
> > create mode 100644 gdb/testsuite/gdb.mi/mi-shadow-stack.exp
>
> Thanks.
>
> > diff --git a/gdb/NEWS b/gdb/NEWS
> > index 37b3add11ed..d3991a495f4 100644
> > --- a/gdb/NEWS
> > +++ b/gdb/NEWS
> > @@ -177,6 +177,16 @@ qExecAndArgs
> > deprecated since GDB 10. Users who need to control the size of a
> > memory port's internal buffer can use the 'setvbuf' procedure.
> >
> > +* New MI commands
> > +
> > +-shadow-stack-list-frames
> > +
> > + Added new MI command '-shadow-stack-list-frames' which is
> > + equivalent to the CLI subcommand 'backtrace shadow' but supports
> > + 'low-frame' and 'high-frame' as command line parameters. The
> > + parameters are used to print shadow stack frames between certain
> > + levels on the shadow stack only.
> > +
>
> This part is okay.
>
> > +List the shadow stack frames currently on the shadow stack. In case
> > +the element on the shadow stack is a return address, @value{GDBN}
> > +prints the same fields as in -stack-list-frames with the return
> > +address on the shadow
> ^^^^^^^^^^^^^^^^^^
> This should be in @code.
>
> > +If invoked without arguments, this command prints a backtrace for the
> > +whole shadow stack. Like the -stack-list-frames command, if given
> > +two
> ^^^^^^^^^^^^^^^^^^ Likewise.
Yes, will fix!
> > +For frame 1 we can see that we only print @var{level}, @var{addr} and
> > +@var{arch}.
>
> Using "we" in the manual is not the best way of expressing such stuff.
> How about
>
> Note that for frame 1 @value{GDBN} printed only @var{level},
> @var{addr}, and @var{arch}.
Oups, I was too quick when writing the docs here.
I further noticed that I missed to update the docs for v2 in this patch since the output for
signals changed also for the mi command.
Based on the results of our discussion with Thiago it might change even further since it's
planned to print "<signal handler called>" just like the normal bt command:
https://sourceware.org/pipermail/gdb-patches/2026-January/224054.html.
But the discussion is not complete yet.
In any case your suggestion sounds very good to me, I'll use that one and adapt it due to
the reasons described above for v3.
> Reviewed-By: Eli Zaretskii <eliz@gnu.org>
Thank you for the review.
Christina
Intel Deutschland GmbH
Registered Address: Dornacher Straße 1, 85622 Feldkirchen, Germany
Tel: +49 89 991 430, www.intel.de
Managing Directors: Harry Demas, Jeffrey Schneiderman, Yin Chong Sorrell
Chairperson of the Supervisory Board: Nicole Lau
Registered Seat: Munich
Commercial Register: Amtsgericht München HRB 186928
next prev parent reply other threads:[~2026-02-13 19:18 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-23 8:05 [PATCH v2 0/9] Add new command to print the shadow stack backtrace Christina Schimpe
2026-01-23 8:05 ` [PATCH v2 1/9] gdb: Generalize handling of the shadow stack pointer Christina Schimpe
2026-02-19 17:55 ` Tom Tromey
2026-02-27 18:09 ` Schimpe, Christina
2026-02-27 18:26 ` Tom Tromey
2026-03-02 11:53 ` Schimpe, Christina
2026-04-09 9:49 ` Schimpe, Christina
2026-04-14 17:34 ` Tom Tromey
2026-04-15 7:35 ` Schimpe, Christina
2026-04-15 15:54 ` Tom Tromey
2026-02-27 22:54 ` Thiago Jung Bauermann
2026-03-06 3:15 ` Thiago Jung Bauermann
2026-03-06 3:57 ` Thiago Jung Bauermann
2026-04-09 11:57 ` Schimpe, Christina
2026-04-10 5:03 ` Thiago Jung Bauermann
2026-04-10 7:53 ` Schimpe, Christina
2026-04-09 12:06 ` Schimpe, Christina
2026-04-10 5:05 ` Thiago Jung Bauermann
2026-01-23 8:05 ` [PATCH v2 2/9] gdb: Refactor 'stack.c:print_frame' Christina Schimpe
2026-01-23 8:05 ` [PATCH v2 3/9] gdb: Introduce 'stack.c:print_pc' function without frame argument Christina Schimpe
2026-01-23 8:05 ` [PATCH v2 4/9] gdb: Refactor 'find_symbol_funname' and 'info_frame_command_core' in stack.c Christina Schimpe
2026-02-19 17:32 ` Tom Tromey
2026-04-09 12:40 ` Schimpe, Christina
2026-01-23 8:05 ` [PATCH v2 5/9] gdb: Refactor 'stack.c:print_frame_info' Christina Schimpe
2026-01-23 8:05 ` [PATCH v2 6/9] gdb: Add command option 'bt -shadow' to print the shadow stack backtrace Christina Schimpe
2026-01-23 8:52 ` Eli Zaretskii
2026-02-13 16:42 ` Schimpe, Christina
2026-04-14 8:43 ` Schimpe, Christina
2026-04-14 11:53 ` Eli Zaretskii
2026-04-14 13:28 ` Schimpe, Christina
2026-04-14 14:12 ` Eli Zaretskii
2026-04-14 15:05 ` Schimpe, Christina
2026-02-19 18:19 ` Tom Tromey
2026-04-09 16:48 ` Schimpe, Christina
2026-03-06 4:31 ` Thiago Jung Bauermann
2026-03-06 9:39 ` Schimpe, Christina
2026-04-09 15:12 ` Schimpe, Christina
2026-04-10 6:21 ` Thiago Jung Bauermann
2026-04-10 12:12 ` Schimpe, Christina
2026-01-23 8:05 ` [PATCH v2 7/9] gdb: Provide gdbarch hook to distinguish shadow stack backtrace elements Christina Schimpe
2026-01-23 8:47 ` Eli Zaretskii
2026-02-19 17:41 ` Tom Tromey
2026-01-23 8:05 ` [PATCH v2 8/9] gdb: Implement the hook 'is_no_return_shadow_stack_address' for amd64 linux Christina Schimpe
2026-02-19 17:43 ` Tom Tromey
2026-01-23 8:05 ` [PATCH v2 9/9] gdb, mi: Add -shadow-stack-list-frames command Christina Schimpe
2026-01-23 8:46 ` Eli Zaretskii
2026-02-13 19:17 ` Schimpe, Christina [this message]
2026-02-19 18:26 ` Tom Tromey
2026-03-02 12:39 ` [PATCH v2 0/9] Add new command to print the shadow stack backtrace Schimpe, Christina
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=SN7PR11MB7638A150CFFE334B3EC82E19F961A@SN7PR11MB7638.namprd11.prod.outlook.com \
--to=christina.schimpe@intel.com \
--cc=eliz@gnu.org \
--cc=gdb-patches@sourceware.org \
--cc=thiago.bauermann@linaro.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