From patchwork Mon Dec 19 21:14:01 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 3120 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:e747:0:0:0:0:0 with SMTP id c7csp2618797wrn; Mon, 19 Dec 2022 13:14:28 -0800 (PST) X-Google-Smtp-Source: AA0mqf7WSR8Vlg4e0hzNV1rSAK4+5V6bXkpoK5mOzwmxKCH/L1MCeHcfN7Uh6WmcImogtWnQLpWO X-Received: by 2002:a17:906:f74a:b0:7c1:2d36:d11a with SMTP id jp10-20020a170906f74a00b007c12d36d11amr34539770ejb.11.1671484468583; Mon, 19 Dec 2022 13:14:28 -0800 (PST) Received: from sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id qk38-20020a1709077fa600b0078049ab4bbasi9800719ejc.526.2022.12.19.13.14.28 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Dec 2022 13:14:28 -0800 (PST) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b=juF5bfb2; arc=fail (signature failed); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 716F53857C4F for ; Mon, 19 Dec 2022 21:14:24 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 716F53857C4F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1671484464; bh=nA2sABPwM3HTqgFIjLr9hBAfbS4AZ0XUaB666jGyprQ=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=juF5bfb2oKvYgOxNSRqSL9f6slwW6jdgM8yEeohXupR2uIgEdhSC5Vb5WT1aKeMFt tAgGo44gqyTvln0oTbo/CX6o98Kq4mIkmGqQPoJJkYGG/+vDwBWsqCAzu4vslkzDHQ BGuBoqe5ImyLA/orNPuYpHGS3AtF71bAftReD+No= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 418F83858D1E for ; Mon, 19 Dec 2022 21:14:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 418F83858D1E Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 2BJIxHaO012090; Mon, 19 Dec 2022 21:14:12 GMT Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3mh6tp3y8j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 19 Dec 2022 21:14:12 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 2BJJno0E012238; Mon, 19 Dec 2022 21:14:12 GMT Received: from nam02-sn1-obe.outbound.protection.outlook.com (mail-sn1nam02lp2049.outbound.protection.outlook.com [104.47.57.49]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3mh474baa2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 19 Dec 2022 21:14:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GwY70GVmNR/KjfdMaiYvLeXzV2oj0dR5+OTX3TKvsgl6glch9dgZBbcdaFHmOlafxq4t5G2bl2+T4Tg8IiSsITEG7uQEUBP6hZskN9dcq2NmJR5RqkmENAym/9ejPU6aaqIr1rUhAUnPGvkOR6olNp+yEPqluRn1ZnxdP1ykk33bDk78f4rgkCX4SjZddvsJjzEqxUzXkDILiNrtf3HpEcyRxdyLTMGN6nMmE+kQAm93M0eS21OWLXptr2+L2VqiWP3LDpEdKHsyzPcfuvwMikceDcosnMCZIfGWUlgZR7RaoyEVY5PwNSeS2QO7lcYl7zIdNtXZCgpxmPuiv728Zg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=nA2sABPwM3HTqgFIjLr9hBAfbS4AZ0XUaB666jGyprQ=; b=afGDsvB7lP+1TcOy8Ce1S5nhI53ofzEORQTWp4YuUPlqstkR5zHZwvJ8E2Ijrtp0F9A3NSNVpZt5MsE11aBbcCSKQNt0j1PGQhFu71ntYdvfzQ4lVcuGWLTKzlzKa6atLuLjjFiztqemEyN+ke0NhnfxXjRIYoJ2h+/VBOiSMscI6znv4M4CSZysz+W7DNPGPNM4M9uPJWOz62TnOwIEmwajEIsgQl5D1MKuHrp761ukpDpRPB0RokLGpvBMHO3d34PGhBIASgsOHnCOEuhF4qUJ/btFRjn7gqNVvr/CEvinqY5vK1eOtzPiliLihMqiaaGo6asjBrz5upYF+MQLMg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none Received: from MWHPR1001MB2158.namprd10.prod.outlook.com (2603:10b6:301:2d::17) by DS7PR10MB4944.namprd10.prod.outlook.com (2603:10b6:5:38d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5924.16; Mon, 19 Dec 2022 21:14:10 +0000 Received: from MWHPR1001MB2158.namprd10.prod.outlook.com ([fe80::ee70:1952:4416:1bdc]) by MWHPR1001MB2158.namprd10.prod.outlook.com ([fe80::ee70:1952:4416:1bdc%5]) with mapi id 15.20.5924.016; Mon, 19 Dec 2022 21:14:10 +0000 To: binutils@sourceware.org Cc: nickc@redhat.com, Indu Bhagat Subject: [PATCH, V2 0/5] SFrame: add support for .cfi_b_key_frame Date: Mon, 19 Dec 2022 13:14:01 -0800 Message-Id: <20221219211406.1443750-1-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.37.2 In-Reply-To: References: X-ClientProxiedBy: MW4PR04CA0266.namprd04.prod.outlook.com (2603:10b6:303:88::31) To MWHPR1001MB2158.namprd10.prod.outlook.com (2603:10b6:301:2d::17) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWHPR1001MB2158:EE_|DS7PR10MB4944:EE_ X-MS-Office365-Filtering-Correlation-Id: 1a696eb6-04ca-406f-c0c0-08dae205f8ab X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1PxUL4QQ3j4Pd/wDfwbjsKaql+45hTwM5UEWS2bq7wSxj8JMuv2lY1UHR2dNgfY49FcpzbGbILZQbOxcMp2XBopEdAfVUloDNpU7BRxYBglI/j+xDjieaY6KVkmlhFrUOMlIosOKax+XZOz+B3zqv98EMIzyh1icCD2OJagnBguMxs5IYonDeGfKuWGAK+bHRHtg3CB5vpH+OGF2m8nW4uPMmTp8kwYiujVqPOfcwAws+l9FrZ8iMMZFaJvx9cRymqZ6yPDMqSsiYOETkKx2Lh2FVI9OTP4o9/7j776Ac4shpWSy2ZNXw2MNqdjJPN3vZBbRg0ZmiighWzi+hpDPz3w9jeoIjEAj+MCTWkYhhwX6unjQwcTPU0MbpH3xGcpkE/105uQSY1wss02WTCuWo5YB/t3vAee/ZAOK1hspZM7kuC4AXFlLoMQAVBz1DSxYnWrnPg4wFWpisrEALa/6lTFZZWLkSI+7lh5q2SklxyL1w1MUSK1i+ev3+eS+UG7Z83FUZe4A7iswIfam0rrqhJzeHpLaEdsBSl+w3vZmi4wHjJOKjvpibUnRJmgFSVRmyC9g5spEzcr1v7mcBFqz1A0RBAq2Oo9Xb+ityfZeijaBGqS5s9hhXoWIBNodeD/XoJktGSuuQLif3KoFr9CaSC3hLxUMmLlYfi7yWzBYCCcD9vyxSHnAp2WdpEir4U/1 X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MWHPR1001MB2158.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(39860400002)(396003)(346002)(366004)(376002)(136003)(451199015)(6916009)(44832011)(4326008)(41300700001)(86362001)(36756003)(5660300002)(8936002)(83380400001)(2906002)(316002)(66476007)(8676002)(2616005)(66556008)(66946007)(1076003)(107886003)(6666004)(38100700002)(6512007)(6506007)(478600001)(186003)(6486002)(142923001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: aH9hU1o7uLaCzqd4Ruqq/vJPqQE8Z6p4sUuWJCPJZRBqdm5vwgNdh4DK43PBPn1ez+MmEZfiFSHyl2vk9M8eZMjypgDTK/fCRGXV1HHQqmO//b0afaqGN1cZcEfh76dx8O10qc40WGvHo1RfjgGde26BMRIV/rFwF2SnaPXhE0SsJWjlVkfK7wQiKUF45K9BtoQQD6a5g5A0+s7ubfHoV7bmOhZrNe1uutMXUoXgcmYdfcQOkMK+OnwZ7p4nt1Gs7dvpxlKpCoQh++R1xAkudjIyACpUInFROQrkzazobLwaa5HJ+5aCRGF3dN2jNPnMQE1Vh667FgbWKfaXbeRegCEQrVXps6vDmWffeDkN3y9erwV+Wz4/fY02mXY7rKR1rBMMdIixLoU7bPLCI1GHRjHsuotc/TsTaWRA8yknwR8es0foCgj4d4gKnlCLul4d32UMnkqamwtSzS2idJgyTFNgprz8mxZbqdIloJq1J7ogf2C+FhZXgCsviPvPIkX9sQHQhJ93zYLKaEA9U4t8Ct0t7IF0dizGx1e7IrUWGYLXI7xDTnEzqLINpHPM6GIclGlY8QZdwTBt1gFFuTXQlWGDwal+V6ecRSjy7zzxUa6GVz2xE2RPaPE3t1PnJJbr2Zx/dcDwWJcRJ7TlV8mFlrLCzCQE0+qGjQ5ZRN0fRSiBVVt7rfej5R7sKYESpZq2kP2M1vAXftg+2wzCtc0xZWHaP7e/YG01PMTia1C8/Yty9JKxnly3TpiATIIiXhvWid1RS0SVjCXzTaMRYdffeBxgDoddBdfkL7mJVh9d8OpihrQdaqX/pzL93Mmf3wYPEs0iYf+NuoWUgbzfasz5GXABYoAPOSk9YM0zcNbG7HIL44MPvinLQYU5GmsP7BZcFrf8AlmVqEW9P7zC3+4MzZnOhLMMjeoeR9lFG7NuaFUq6ntSSrQVPD3Boj1Xr7ghHR8HnRXWwEOgD5/RUKnd54rC/GUOzx+RUl2OHC4xKYFBOly6M1wOtfLPbhgsAqIqAjUb+XhfcE9Tp4NSpzJx7Mr95Og3PEzsA6Vs0L1+TW0IVQeu7qQdJ8XCT9zkTRgSJ4iTBPCFWxO86gikcg71qufv3wlCT4XN6oh/uePE2WOVpetWO0hpd2qWEiiDN0Tf2tgqWEMYl9D5ZXXCE0QznxqBPOHyzMgHE6tJt6fACzb59PAvB4aWR6e0v01W7aa2xAVT2BlNpfZWaJf7MKl7ushqZDztbplTR0GRs+TLkh0vuRpTtWRQcgaTVqaiEF4CXliqrKBHeePYcxrRE7MIVulQR7/AXZiu2r8QkYYCZSsf9Ox+3WnWcDA+Syb9lRx16Mad7X4A/BsXnYxzI4SX1CojakJx1AZ0baoyPPDD03aPH2zkP4I+wu0kqvkEy/eHGMPTP55IqxEalIB5ZE1O7ROM7gp3vJKKEv4lVnmAuHmBEDIdhrOvv65Rv0ufQ6BWyZGjz4AsNAr0rkibdNp2AGXkhd2E1n+p6if+ajhuQqhHCI9unSs2XltB9xiC9d5hAAMrxXYKyTZQjMagUFpUMEoZQp1m7iVpZF4bfZKqOLt4rSBmV5DFcCbci2zv3zdts5taMT3EkXH47jY8mljdN4K/ilimi4zN7dnjFwSuCjs= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1a696eb6-04ca-406f-c0c0-08dae205f8ab X-MS-Exchange-CrossTenant-AuthSource: MWHPR1001MB2158.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Dec 2022 21:14:10.2628 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: matN9opT2ItpXlk6NkkZj0jLr1X+mV6WqYHQDgJCuJhXWsN/mshbGSpLN+D8U4IkUKi6UyadJUdRNT68+v8M1A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB4944 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-12-19_01,2022-12-15_02,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 bulkscore=0 mlxscore=0 adultscore=0 phishscore=0 suspectscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2212190187 X-Proofpoint-GUID: iePtb-rpG8mnBcMZmy6V9_nbSOI2iZ7z X-Proofpoint-ORIG-GUID: iePtb-rpG8mnBcMZmy6V9_nbSOI2iZ7z X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org Sender: "Binutils" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1752221351845879404?= X-GMAIL-MSGID: =?utf-8?q?1752678497774838081?= [Changes from V1] - Rebased on latest trunk. - Fixed the testcase as we now emit "[s]" marker for both mangled RA in register and stack. [End of changes in V1] Thanks ---------------------- Hello, This patchset adds support for handling the .cfi_b_key_frame assembler directive to the SFrame format: SFrame format representation now allows to encode which of the pauth A key / B key are used (for signing return addresses on aarch64), and gas, readelf/objdump now allow for generation and textual dump of this information. Testing notes: - Regression tested cross build of several targets on an x86_64 host and an aarch64 host using a regression script that checks for failures in gas, ld, binutils, libctf and libsframe. - Regression tested native builds on x86_64 and aarch64. - binutils/gdb try bot showed no new regressions. Thanks, Indu Bhagat (5): [1/5] sframe.h: add support for .cfi_b_key_frame [2/5] gas: sframe: add support for .cfi_b_key_frame [3/5] objdump/readelf: sframe: emit marker for SFrame FDE with B key [4/5] gas: sframe: testsuite: add testcase for .cfi_b_key_frame [5/5] sframe: doc: update documentation for pauth key in SFrame FDE gas/gen-sframe.c | 26 +++++++++++--- gas/gen-sframe.h | 2 +- gas/sframe-opt.c | 3 ++ .../cfi-sframe-aarch64-pac-ab-key-1.d | 27 ++++++++++++++ .../cfi-sframe-aarch64-pac-ab-key-1.s | 36 +++++++++++++++++++ gas/testsuite/gas/cfi-sframe/cfi-sframe.exp | 1 + include/sframe.h | 25 +++++++++---- libsframe/doc/sframe-spec.texi | 8 ++++- libsframe/sframe-dump.c | 19 ++++++++++ 9 files changed, 135 insertions(+), 12 deletions(-) create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-aarch64-pac-ab-key-1.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-aarch64-pac-ab-key-1.s