From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id IJFBFG41c2mcGREAWB0awg (envelope-from ) for ; Fri, 23 Jan 2026 03:46:38 -0500 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=gnu.org header.i=@gnu.org header.a=rsa-sha256 header.s=fencepost-gnu-org header.b=UdPhUvUb; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 456581E08D; Fri, 23 Jan 2026 03:46:38 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_VALIDITY_CERTIFIED_BLOCKED, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 7F4941E08D for ; Fri, 23 Jan 2026 03:46:37 -0500 (EST) Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id 1E1AC4BCA41B for ; Fri, 23 Jan 2026 08:46:37 +0000 (GMT) Received: from eggs.gnu.org (eggs.gnu.org [IPv6:2001:470:142:3::10]) by sourceware.org (Postfix) with ESMTPS id C34914BA2E29 for ; Fri, 23 Jan 2026 08:46:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C34914BA2E29 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gnu.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gnu.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org C34914BA2E29 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2001:470:142:3::10 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1769157987; cv=none; b=Z+Pb5PmnxmeuliY+XbvqH6Bq+Q0JWv8KulXmbcBorLHXpjKztX0cyyb8vfgGK5v1hBL5SPFfRXpfjceOX9rg+gbVrR/4kfhk0srno7F0Hlpp/HDxHGroLvgRUT6dNl4Ffsg03OTC6NTdCVoBJCm05b/aGwhkDqCsKqUvKcPNNP4= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1769157987; c=relaxed/simple; bh=P1/91p0sXDw75zKSzJPVqC4hfI+yKVBlMxD9Lzo3yhc=; h=DKIM-Signature:Date:Message-Id:From:To:Subject; b=BdQdfH+v/YUWropRk8b/GPF7DZbP8SlcWMjNCDFShEfEBDuIvhyVqLPmE8rGzQkg8aLARjClDk/we7tSSYvUnD8aZGJnHYUKkIS7crULamupnEnpm+/LFNXJA7EReHfZdzpGxZL4bH4raIhL0k7vd5lceikJSgHbzakvSqUOhD8= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C34914BA2E29 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=gnu.org header.i=@gnu.org header.a=rsa-sha256 header.s=fencepost-gnu-org header.b=UdPhUvUb Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vjCoE-00057L-JU; Fri, 23 Jan 2026 03:46:26 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=jzlC15RkhIKOoMQMzBWqAaWYTbkL7+Em8t3JRr7m3pI=; b=UdPhUvUb+k6c oTxCK8xPzfHo5T94AzHbZ31CIkWcoIGm3LXj1P0JAcvAU0GupfCI7jotuqRDaoSxgy/1gFuFCilEB PakwFNg7e/OgQuy7K0xNNAwE3DCgr7F5DZSro7+N8XelZUHfymz4ROmmupbF/jvTuRh5FXSIzgipA 61bU72bZnl01Y1+ZnHp24Rv8/L7kVn8AiJYJ6ipR3cdbLzo54kT3Vg59tbEBgrkdkhqGHPR56Ao7p Kqo+R3J3AdGAu9Mv89ErqM7CDjnHVILGJ128zmgj0Bm6h936sYZexMeDSHa/xJvYL5bP0YPMxZWzm rNJEmFZ700ummucWLq1baw==; Date: Fri, 23 Jan 2026 10:46:22 +0200 Message-Id: <86cy30iun5.fsf@gnu.org> From: Eli Zaretskii To: Christina Schimpe Cc: gdb-patches@sourceware.org, thiago.bauermann@linaro.org In-Reply-To: <20260123080532.878738-10-christina.schimpe@intel.com> (message from Christina Schimpe on Fri, 23 Jan 2026 08:05:31 +0000) Subject: Re: [PATCH v2 9/9] gdb, mi: Add -shadow-stack-list-frames command References: <20260123080532.878738-1-christina.schimpe@intel.com> <20260123080532.878738-10-christina.schimpe@intel.com> X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org > From: Christina Schimpe > 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. > +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}. Reviewed-By: Eli Zaretskii