From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id kIuCDGgppGf80iUAWB0awg (envelope-from ) for ; Wed, 05 Feb 2025 22:15:52 -0500 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=ZnCI52Pr; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 2FEBB1E105; Wed, 5 Feb 2025 22:15:52 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-5.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=4.0.0 Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (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 98F771E05C for ; Wed, 5 Feb 2025 22:15:51 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7D2E63858431 for ; Thu, 6 Feb 2025 03:15:50 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7D2E63858431 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=ZnCI52Pr Received: from mail-pj1-x102f.google.com (mail-pj1-x102f.google.com [IPv6:2607:f8b0:4864:20::102f]) by sourceware.org (Postfix) with ESMTPS id D16EC3858C51 for ; Thu, 6 Feb 2025 03:15:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D16EC3858C51 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D16EC3858C51 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::102f ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1738811721; cv=none; b=g6kJf4KHBNDvqelRBuI6rRukv+1r6CM7vuQAtW1sp2PeCmMJetPNMvw55ft/edMR9QZ6uTsRQqKNkp9yBQ9hEub3gh4RmUHjyCo619hdchLgomB6A1iQYIr+WAIk1glUkJVmcavGTakTGrwya2C4Mnq0FBHKnZDakEplXwxWSVA= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1738811721; c=relaxed/simple; bh=y7xGwmBm9kQKc7s6k9ln2VDu/s5IKqR80Tcwl6ML43o=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=BNHY0QLuLHPGSFH1LWjdrGv1xK/gsgt48xmjTT5wG7x0enZY1xUSrSCicTCl9SdvZFiolFmSDHWBnM+VKLsR+YvWWooCH8q6egvXPEq19kOxNxrhXiZD7h+XUFWKoYAinXL8NEDgGjl8uY2ZciJO88+t2d4gddPNhFa1Wbekq8A= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D16EC3858C51 Received: by mail-pj1-x102f.google.com with SMTP id 98e67ed59e1d1-2f9f6a2fa8dso558363a91.1 for ; Wed, 05 Feb 2025 19:15:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738811720; x=1739416520; darn=sourceware.org; h=mime-version:message-id:date:user-agent:references:in-reply-to :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=dHgk1ZsVk7ZQ4qg9Fos8bYgg/x2X3ouGS2k5/Rps6z0=; b=ZnCI52Prxt1uyDEpuKLg1Z4n5WJG7P46Lort5Y2EX5XPSACuMh0nwOaUaE/CNTWrbx ldrRJmvMJAxpH4YNGiAhdElh28cqa6jklNpHaXrJYcvUOhAVVZVfNc1XGoLIgbz+f8eL Q49m2sneQJDd/iBTO86PnTY/zRjmZ9GQZ5LgSZl6GPaq/ZV8OyLAJId4JQTI0apmt43o PkyBLzUgI10vDzJ+kny7OQk1d0aVSqCG28+MCB3I4yfzYCHA/KWA12NLI/eWt+xPZWsv sz7N3MPVR5g7I+og7XfYwrfxENJLQqaEaThWBd5AE9pjX+jn5Gy5Yoeti84L7MUIQKJ3 8iGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738811720; x=1739416520; h=mime-version:message-id:date:user-agent:references:in-reply-to :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=dHgk1ZsVk7ZQ4qg9Fos8bYgg/x2X3ouGS2k5/Rps6z0=; b=bzlyyXBNr5XDrR98P+5xLp0iIvU8+fRIm+WUPeNdMexCbsjPrQuPHZe7MO5i5DW2eW gWDNh0Q63aT/rho2o95JkJ3zBjVuyY252IINHGY6K9u2erky1g/AXR42vA4VBgp3cO9Q E9zuZK2aGopWYQe4YIvE6++Bye4b7qB5r/MpasBKIEWT7G1gdKd+frcgEwSAKn/sE5wJ AF8VqBgIMLgqilJn3co6w6+rXO8GXH/rv4yuAwaLw0VMx+pt4gvkg3xGV3wM5kiTcYj7 1/ZI6pLRelXGGxcudlYoAf4QRN22sZL8+dV6PC73dQSljR/aYRzKEKX7SlH4tzFuZ2Sg thsA== X-Gm-Message-State: AOJu0Yyutg2dypAA8MJvJffXIG8Am1uKIl2lutqOt7jcWwFX5fTFJqUG noz4Nl9lv2g2ctWqOCIn1jxKHzCt9omqgvC/ThHpxS3IUUXO1dk+mGqPjDRo80Q= X-Gm-Gg: ASbGnct1KcU0Yz/c0pIvFdWItNG05Yf8NpRJ0YF4vC9eQXVEKtIxPg2nuAtnf49bZPZ deI3p5nSdj4WFpUMIQPWpR/bDqR9HlFmzDUYZNxA0i2zzt8i/C6plU3MEdgwhPuQuZnx+BVFPvS 0+122+qPrDvH/ZLybpUs4W1stE070QAfbjb0dg/zpBsVlf4ajTknVzJvRA7b+QzicYQ4JDPmyf4 Md4sWijr+uq/2i4zWzWQxCdEp1IPbXzpIYJPn9nIL88ZlrQAMdQ631utpb4ALEXyHUzy0TdCzVt JJSuqGP3nhqY24BTEVzQsvo= X-Google-Smtp-Source: AGHT+IEB1G9vqTgRvlhgaVcaSxMZvF84VWDyqdts5XDd8M0Uf+JkNHvvTpbfSynZAdfCSTO35W0bzQ== X-Received: by 2002:a17:90a:1610:b0:2fa:e9b:33b8 with SMTP id 98e67ed59e1d1-2fa0e9b36famr86438a91.18.1738811719793; Wed, 05 Feb 2025 19:15:19 -0800 (PST) Received: from localhost ([2804:14d:7e39:8470:7e5:16be:a0c6:ff7]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2f9e1d89b9csm2398758a91.27.2025.02.05.19.15.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Feb 2025 19:15:19 -0800 (PST) From: Thiago Jung Bauermann To: "Schimpe, Christina" Cc: gdb-patches@sourceware.org Subject: Re: [PATCH 07/12] gdb, bfd: amd64 linux coredump support with shadow stack. In-Reply-To: <20241220200501.324191-8-christina.schimpe@intel.com> (Christina Schimpe's message of "Fri, 20 Dec 2024 20:04:56 +0000") References: <20241220200501.324191-1-christina.schimpe@intel.com> <20241220200501.324191-8-christina.schimpe@intel.com> User-Agent: mu4e 1.12.8; emacs 29.4 Date: Thu, 06 Feb 2025 00:15:16 -0300 Message-ID: <8734grix17.fsf@linaro.org> MIME-Version: 1.0 Content-Type: text/plain 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 "Schimpe, Christina" writes: > From: Felix Willgerodt > > Intel's Control-Flow Enforcement Technology (CET) provides the shadow > stack feature for the x86 architecture. > > This commit adds support to write and read the shadow-stack node in > corefiles. This helps debugging return address violations post-mortem. > The format is synced with the linux kernel commit "x86: Add PTRACE > interface for shadow stack". As the linux kernel restricts shadow > stack support to 64-bit, apply the fix for amd64 only. > > Co-Authored-By: Christina Schimpe > --- > bfd/elf.c | 24 +++++++++ I don't know what is current practice: should BFD changes be sent separately to the binutils mailing list, or in the same patch or patch series as the GDB changes that use them? If the latter, then the binutils mailing list needs to at least be on Cc: > gdb/amd64-linux-tdep.c | 52 +++++++++++++++++-- > .../gdb.arch/amd64-shadow-stack-corefile.exp | 50 ++++++++++++++++++ > 3 files changed, 122 insertions(+), 4 deletions(-) > create mode 100644 gdb/testsuite/gdb.arch/amd64-shadow-stack-corefile.exp Just some minor comments. Reviewed-by: Thiago Jung Bauermann > @@ -1630,6 +1642,30 @@ static const struct regset amd64_linux_xstateregset = > amd64_linux_collect_xstateregset > }; > > +static void > +amd64_linux_supply_ssp (const struct regset *regset, > + struct regcache *regcache, int regnum, > + const void *ssp, size_t len) > +{ > + x86_supply_ssp (regcache, *static_cast (ssp)); > +} > + > +static void > +amd64_linux_collect_ssp (const struct regset *regset, > + const struct regcache *regcache, int regnum, > + void *ssp, size_t len) > +{ > + x86_collect_ssp (regcache, *static_cast (ssp)); > +} These functions should have documentation comments. > + > +/* Shadow stack pointer register. */ > + > +static const struct regset amd64_linux_ssp_register > + { > + NULL, amd64_linux_supply_ssp, amd64_linux_collect_ssp > + }; > + > + Just one line of separation between functions is enough. > /* Iterate over core file register note sections. */ > > static void -- Thiago