Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Thiago Jung Bauermann <thiago.bauermann@linaro.org>
To: "Schimpe, Christina" <christina.schimpe@intel.com>
Cc: "gdb-patches@sourceware.org" <gdb-patches@sourceware.org>
Subject: Re: [PATCH 9/9] gdb, mi: Add -shadow-stack-list-frames command
Date: Thu, 05 Mar 2026 23:44:49 -0300	[thread overview]
Message-ID: <878qc5znfi.fsf@linaro.org> (raw)
In-Reply-To: <SN7PR11MB763805C35D96E0A1ECA8E45AF997A@SN7PR11MB7638.namprd11.prod.outlook.com> (Christina Schimpe's message of "Thu, 22 Jan 2026 17:01:01 +0000")

"Schimpe, Christina" <christina.schimpe@intel.com> writes:

>> -----Original Message-----
>> From: Thiago Jung Bauermann <thiago.bauermann@linaro.org>
>> Sent: Mittwoch, 26. November 2025 05:27
>> To: Schimpe, Christina <christina.schimpe@intel.com>
>> Cc: gdb-patches@sourceware.org
>> Subject: Re: [PATCH 9/9] gdb, mi: Add -shadow-stack-list-frames command
>> 
>> Christina Schimpe <christina.schimpe@intel.com> writes:
>> 
>> > diff --git a/gdb/testsuite/gdb.mi/mi-shadow-stack-signal.exp
>> > b/gdb/testsuite/gdb.mi/mi-shadow-stack-signal.exp
>> > new file mode 100644
>> > index 00000000000..219f1b8ad78
>> > --- /dev/null
>> > +++ b/gdb/testsuite/gdb.mi/mi-shadow-stack-signal.exp
>> 
>> My only suggestion for this testcase is to add "amd64" to the filename, since
>> it can only run on x86. Perhaps mi-amd64-shadow-stack-signal.exp?
>> 
>> > diff --git a/gdb/testsuite/gdb.mi/mi-shadow-stack.exp
>> > b/gdb/testsuite/gdb.mi/mi-shadow-stack.exp
>> > new file mode 100644
>> > index 00000000000..bbbc7ec5460
>> > --- /dev/null
>> > +++ b/gdb/testsuite/gdb.mi/mi-shadow-stack.exp
>> 
>> Samme suggestion here, about adding "amd64" to the filename.
>
> I applied all of it except the filename, since for mi I don't see any file
> starting with amd64-* in the testsuite folder gdb.mi/*.
>
> What happens if you run this for GCS ? Could we create a source file
> which is architecture independent?

I tried that but didn't get very far. There is the tunable
"glibc.cpu.aarch64_gcs" which can be used to force GCS to be enabled,
but then GDB gets a SIGSEGV at startup if it's not itself built to use
GCS. I need to make the inferior use the prctl syscall to enable shadow
stack explicitly.

I assume this doesn't happen in your case because for Intel you need
both the tunable and the compiler flag "-fcf-protection=return" to
activate shadow stacks?

Speaking of tunables, now that I looked closer into the testcase I was
surprised that you need to explicitly enable the SHSTK bit in
glibc.cpu.hwcaps. 

On AArch64, if the CPU and the kernel both support GCS, then the GCS
hwcap will be automatically enabled. This doesn't mean that GCS will be
used by applications though.

Anyway, nothing to worry about. I'm just noting the difference.

My suggestion is to leave the testcase as you currently have it, then
I can adapt it later for AArch64 with a separate patch.

-- 
Thiago

  reply	other threads:[~2026-03-06  2:45 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-23 11:18 [PATCH 0/9] Add new command to print the shadow stack backtrace Christina Schimpe
2025-09-23 11:18 ` [PATCH 1/9] gdb: Generalize handling of the shadow stack pointer Christina Schimpe
2025-10-31  1:31   ` Thiago Jung Bauermann
2025-11-17 11:18     ` Schimpe, Christina
2025-11-26  4:19       ` Thiago Jung Bauermann
2025-12-30 10:39         ` Schimpe, Christina
2025-09-23 11:18 ` [PATCH 2/9] gdb: Refactor 'stack.c:print_frame' Christina Schimpe
2025-10-03 20:05   ` Tom Tromey
2025-09-23 11:18 ` [PATCH 3/9] gdb: Introduce 'stack.c:print_pc' function without frame argument Christina Schimpe
2025-10-03 19:56   ` Tom Tromey
2025-09-23 11:18 ` [PATCH 4/9] gdb: Refactor 'find_symbol_funname' and 'info_frame_command_core' in stack.c Christina Schimpe
2025-10-03 19:55   ` Tom Tromey
2025-09-23 11:18 ` [PATCH 5/9] gdb: Refactor 'stack.c:print_frame_info' Christina Schimpe
2025-10-03 20:03   ` Tom Tromey
2025-09-23 11:18 ` [PATCH 6/9] gdb: Implement 'bt shadow' to print the shadow stack backtrace Christina Schimpe
2025-09-23 11:47   ` Eli Zaretskii
2025-09-25 11:06     ` Schimpe, Christina
2025-09-25 13:19       ` Eli Zaretskii
2025-09-25 14:58         ` Simon Marchi
2025-09-26  7:45           ` Schimpe, Christina
2025-10-29 15:05             ` Schimpe, Christina
2025-10-29 15:28               ` Guinevere Larsen
2025-11-03 19:47                 ` Schimpe, Christina
2025-11-04 11:53                   ` Guinevere Larsen
2025-11-05 16:33                     ` Schimpe, Christina
2025-10-13  1:17       ` Thiago Jung Bauermann
2025-10-13  7:19         ` Schimpe, Christina
2025-10-31  4:39           ` Thiago Jung Bauermann
2025-11-06 14:23             ` Schimpe, Christina
2025-10-03 20:15   ` Tom Tromey
2025-10-12 19:45     ` Schimpe, Christina
2026-02-19 17:24       ` Tom Tromey
2026-03-02 12:24         ` Schimpe, Christina
2025-10-31  4:02   ` Thiago Jung Bauermann
2025-11-17 20:14     ` Schimpe, Christina
2025-11-26  4:07       ` Thiago Jung Bauermann
2025-11-26 16:29         ` Thiago Jung Bauermann
2026-01-22 17:04           ` Schimpe, Christina
2026-03-06  2:35             ` Thiago Jung Bauermann
2026-01-15 14:05         ` Schimpe, Christina
2025-09-23 11:18 ` [PATCH 7/9] gdb: Provide gdbarch hook to distinguish shadow stack backtrace elements Christina Schimpe
2025-09-23 11:49   ` Eli Zaretskii
2025-09-25 11:10     ` Schimpe, Christina
2025-11-02 21:20       ` Thiago Jung Bauermann
2025-11-12 17:28         ` Schimpe, Christina
2025-11-16 18:39           ` Thiago Jung Bauermann
2025-11-17 11:51             ` Schimpe, Christina
2025-09-23 11:18 ` [PATCH 8/9] gdb: Implement the hook 'is_no_return_shadow_stack_address' for amd64 linux Christina Schimpe
2025-11-26  4:22   ` Thiago Jung Bauermann
2025-09-23 11:18 ` [PATCH 9/9] gdb, mi: Add -shadow-stack-list-frames command Christina Schimpe
2025-09-23 11:53   ` Eli Zaretskii
2025-09-25 11:32     ` Schimpe, Christina
2025-10-03 20:17   ` Tom Tromey
2025-10-12 19:54     ` Schimpe, Christina
2025-10-13  0:06       ` Thiago Jung Bauermann
2025-11-26  4:26   ` Thiago Jung Bauermann
2026-01-22 17:01     ` Schimpe, Christina
2026-03-06  2:44       ` Thiago Jung Bauermann [this message]
2025-09-25 11:46 ` [PATCH 0/9] Add new command to print the shadow stack backtrace Schimpe, Christina
2025-10-08  1:46   ` Thiago Jung Bauermann
2025-10-13  1:18     ` Thiago Jung Bauermann
2025-10-13  6:34       ` Schimpe, Christina
2025-10-29 14:52         ` Schimpe, Christina
2025-10-31  0:47           ` Thiago Jung Bauermann
2025-12-30 10:16             ` Schimpe, Christina
2026-03-06  2:30               ` Thiago Jung Bauermann
2026-03-12  9:53                 ` 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=878qc5znfi.fsf@linaro.org \
    --to=thiago.bauermann@linaro.org \
    --cc=christina.schimpe@intel.com \
    --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