From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on2064.outbound.protection.outlook.com [40.107.104.64]) by sourceware.org (Postfix) with ESMTPS id ED10638515C5 for ; Fri, 21 Oct 2022 09:53:37 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org ED10638515C5 ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=TzRl10qG9HYdrIOPe07i+jYPqpyxLBq+/sIw6sF2kqHVKeA5h5v8wYqrxbi0uvA+jN3gROW3Hl/8HFLhOdBv7n9a+mQjZQb2SaLresYHMyq6oBoxyBGDFBJK6vikzVoh6mLslo4Lb2oi4BO8z00SfOVwsIBxS3348unFOBp5OrBoremvp9WtnGR42yeiIeFeU8UDwJVHcrO3NjBrK2Veam55ndUdvYkrYEs4eGOCfC0v3j8jWYwTXEuarRfEg3OfARKWFOBgNbzuGb2SI+Tlr2w03N/XnUI2ZLrwp/+mPGCusWUsuYmhIsEolnh7QiS4SiE/ZkrMU7qf6w6KpS+BkA== ARC-Message-Signature: i=2; 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=58kFJ6ikYjY77Tqj2H5v8Bh1LUBfJhkrg/PvbwmWtIs=; b=Gp2mlDwPq8nr1v3udwa2RzcEvglEh39sBwBgUSKW5ScwoGWEfCJ9pErbLjeUcX3d9eZEPy2jyUtLfsssOVdt6YehrC/j8eT2rEf83cKDG8o9w7AKp6SzyqHpZzq3M1muh/sa+TpfBHwT4JBdImXXZv9sSGUK5UshN/UAP7NqJ/kEKLY+BZBtIxl0eT/eB4pNPJ/hxhQD50TLyNq3OM+qM/Lz3GZugjaJf+DGLrXo9Eu3qJ9yezAoaM6TN3Hdd/iYjSe/xBufiQVDIl45EEBz4S6GUrZSBTpIBxKAFGXr0Dq0OxpUeLIUbMQxbEf6fxYoZMOUZNOIorqGgj2ioyPFiw== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=sourceware.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) Received: from DB6PR0601CA0014.eurprd06.prod.outlook.com (2603:10a6:4:7b::24) by GV2PR08MB8485.eurprd08.prod.outlook.com (2603:10a6:150:c3::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.32; Fri, 21 Oct 2022 09:53:35 +0000 Received: from DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com (2603:10a6:4:7b:cafe::d9) by DB6PR0601CA0014.outlook.office365.com (2603:10a6:4:7b::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.30 via Frontend Transport; Fri, 21 Oct 2022 09:53:35 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT023.mail.protection.outlook.com (100.127.142.253) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5709.10 via Frontend Transport; Fri, 21 Oct 2022 09:53:35 +0000 Received: ("Tessian outbound 6c699027a257:v130"); Fri, 21 Oct 2022 09:53:35 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 5193b859570b5b16 X-CR-MTA-TID: 64aa7808 Received: from 92b0310f1ce5.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id BD485A91-9A0C-4156-849A-3C9D4AF6568D.1; Fri, 21 Oct 2022 09:53:28 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 92b0310f1ce5.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 21 Oct 2022 09:53:28 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iac4E+YljRPl4Bo8A1ATUCqoJgKsPlcjitbajz3D6JGP9QBdRW4KxG2u9tlkvOehYn8l1CHTDE7H9vyPhWU529CnrNsUBDFt+ERyW7xYfUthfRX4tnTgdE2maTzyTlbUd7F6v7W3MSNsV8Wf4JZ61L3R3/pj0GQqLizARvJV9uW/CcPFK2hG0Wc9gb1mFEtaN80oqzD+6B6a4Y8AsqB3y+4i+quSKGN3QyxtHcicfDXTzN+ey1hR4l73q2jgmb0Whq1Fxon/Yis9xL7H9cgtUffsZ31ComwnSX9XyjIEF/rQR9KBIfFpNl5mp5pgjWyhwCR8t3QDALlC++/b2ALhxg== 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=58kFJ6ikYjY77Tqj2H5v8Bh1LUBfJhkrg/PvbwmWtIs=; b=IhL8EDgLrQVqtd89Pl0zHu6uZNeAboiqhA2jH+hVmSF9MI8+U+tZSVXBw3T1DbtJTKcXIjvbhGcBfC9LWkANUbr5Fr3gg/g7k2cPWanGj+mEmwr59vJoMsbMMSuZ7RkUBcTsCz1EsrsrW8kNF8qdeaVCykNiwvE11/2h5GoJxlOGwD89iuaTIyQkYV/i2EzwrhHMLZvu12vw0Htcvk1cPM61IKRDEl8QaIiC/VjbOlFa+gozVp9mz7ilXNGDJvXeZZ6mZB3PGYRT+bt6yP8baJtMxNM78oteEeRP+O5h4pL5RBE0jQtIgBEdOm1+32Le/K+1a3ZB9SMGsFE/YlKr/g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI1PR08MB3919.eurprd08.prod.outlook.com (2603:10a6:803:c4::31) by PA4PR08MB7547.eurprd08.prod.outlook.com (2603:10a6:102:26d::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.34; Fri, 21 Oct 2022 09:53:26 +0000 Received: from VI1PR08MB3919.eurprd08.prod.outlook.com ([fe80::7f57:1601:9b18:7529]) by VI1PR08MB3919.eurprd08.prod.outlook.com ([fe80::7f57:1601:9b18:7529%7]) with mapi id 15.20.5723.034; Fri, 21 Oct 2022 09:53:26 +0000 Message-ID: <332e7b44-f0bd-d8d7-370b-6874b00a3930@arm.com> Date: Fri, 21 Oct 2022 10:53:25 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: [PATCH v4] gdb/arm: Terminate frame unwinding in M-profile lockup state Content-Language: en-US To: Tomas Vanek , gdb-patches@sourceware.org, Torbjorn SVENSSON References: <1666345174-13928-1-git-send-email-vanekt@fbl.cz> From: Luis Machado In-Reply-To: <1666345174-13928-1-git-send-email-vanekt@fbl.cz> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P265CA0134.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2c4::6) To VI1PR08MB3919.eurprd08.prod.outlook.com (2603:10a6:803:c4::31) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI1PR08MB3919:EE_|PA4PR08MB7547:EE_|DBAEUR03FT023:EE_|GV2PR08MB8485:EE_ X-MS-Office365-Filtering-Correlation-Id: 4bb63b1e-ff04-4634-b45a-08dab34a1ed4 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: SCQ3q8rEScfT9m4UR28sViJGHs0PYxmcBCbLhArUzrG4y70LMH7J4vHlaBvrEK5IhHdnW8Mklujb6S1eorXNQYbnE1q2zcrJN6SSpOWOGTOC2DFUiJ4UahIU/LuTTafSomg6bgoXiqX1ELXPXac+frjLEPYzluuT0Jn6RgsA/ysAsY5nJMnT/SmmbFsSxWaDkLsYIhxyD4cKD0Nk4Ltl0lQAFbQFK4ru522ZpLOJZFHduENVIXKogmk7p4ghKrDZpKyDetUnwNN4Apm/cDHUCpJKNUIqm3JINoWkiPkbsZjOkTFkeI7HwN66akSEXqCeMUO2cnA7ORrZU2Hj7lU8Nxd7vjdmbeLM4KqHEZ1NkKZTQl6k4fNW0KhXjPi2FmgJT9o8PAoI1blciMZucHv8qFebxxWLgbWHBLxS7pqM5nyiuJ0YACpjENrpffiJ32tdSn1EosE6/5HtbFQnKaPrg6D89a0jduI2LyJmD4lXL/sTtysNwNSWXGW3k3sXOoVLTRLj0VGbQKwJNIhZKGBbMaxrbrimIFGM5VPbe1gorxlMA2/O6JEl0+bnzjyLhZU7c8Vdy2TARlTW77HqaU/UiNcltScis5TjklIqnk+pKf5zAr854UVC5tmAh5j2q3nPDkVHmkS11T3ACi5h9q9rgKFgRzpYQh2C1lSefCvO4FfpPnsCV68ZNnuzRU8xvskdeURjo8pV9CyPronFzCT/2Pl398z9EfOEKQcYPWX8U29XNa4JKOudJ+c0Fv1vSqnszHPFRS3i6plFjZxyjw6DCfl+I5NSKRhKG8jj40GAQjvbXGEXFpcaPqV67yaRTaoA X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR08MB3919.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(346002)(396003)(136003)(376002)(39860400002)(366004)(451199015)(316002)(31696002)(6512007)(26005)(86362001)(8676002)(2616005)(66556008)(66946007)(66476007)(44832011)(53546011)(186003)(6506007)(66574015)(38100700002)(5660300002)(6486002)(83380400001)(478600001)(41300700001)(31686004)(36756003)(966005)(110136005)(8936002)(2906002)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7547 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 32f83660-433c-42ee-4cc7-08dab34a1956 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iMrHDZ5MQvWhM+OHkqLawO36i/Y0VtKfZDnI83UOzLlcCeMFrMXU2yWxMfJNLaMToktuP2Kh0rx1T1Pduox5BR3WVGxs0myFDkbePBL/SGvP4ANmgiVDJN+PRRf+RwWWcR4cgSWxtXPxDZTS+CFw5MXAbEDRA4I3sm33+ba7jtR3iTSFAVKrNmyCh+UL4+uQ7F8k4+TyaqjEkBgWuCJ6K8fZizlXCkvunCPJ8LDNNP31+dGKCKWgJyam+s/ENwPxFcpNrB9a4Defg5dYJYVMPs7fKCu45oyBKZ9EoHkTY29dOeRqg7KzxhDonI1JEeohJxV1co5PUwOrwGX2jBmy1pdGfuTj1OXOWW0zJeZ/7WJlROLQVm//f76aOoEi52/ThoT/nubtgsTQFkJ6+TaKzuRRtI/H4/zI88Fhn2nnyIH+VLrePht3FQSgKFjqauXN3Djn97xVb/fPOk0nkdgl9G4wBKhR2cLKqHG+biy+7w08oJ/x280mdjLQpiQfdBGb/3kJXF0dwyYOwmFIDx6KxwqYOSjWmnAn2nk9K1NthyVOb+AVEBfygkj5nraV9Rpn4OP7RD1D92/ZbM3I+bwwhxmrShUPC05TFDcG2ortj/rmKVoev/vZsO06B83XCRYq7KtBsfph4yEzXnWuVwMZ0uFeyK70TboeKy+OsVAYTgNCg963nekCRS3VHq6I8UTjIjwPYwVoqX4lrr0Eau2J/TwLAjoH4s37t5dYgBpP6EoxAW32prZg4DnzAmsUEGfLu2mlYO87Ok9zsNQXy9BEaaUVL9fxnE4iKXtr3lgYt/Ib+qIPo1axkjNVfADaqGt463+5ejEggPKVpcBnkc5QUQ== X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230022)(4636009)(396003)(136003)(39860400002)(376002)(346002)(451199015)(36840700001)(46966006)(40470700004)(70206006)(70586007)(40480700001)(110136005)(6486002)(966005)(8676002)(316002)(36756003)(31686004)(53546011)(26005)(40460700003)(6506007)(81166007)(86362001)(31696002)(356005)(478600001)(336012)(47076005)(186003)(66574015)(2616005)(83380400001)(6512007)(8936002)(5660300002)(41300700001)(82310400005)(82740400003)(36860700001)(44832011)(2906002)(43740500002); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Oct 2022 09:53:35.2398 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4bb63b1e-ff04-4634-b45a-08dab34a1ed4 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8485 X-Spam-Status: No, score=-12.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, KAM_DMARC_NONE, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NONE, TXREP, UNPARSEABLE_RELAY 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: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Oct 2022 09:53:40 -0000 Hi Tomas, No need to send a v5 for this, but do reference the bugzilla entry: https://sourceware.org/bugzilla/show_bug.cgi?id=28549 in the commit message. Let's wait for Torbjörn's feedback. On 10/21/22 10:39, Tomas Vanek wrote: > In the lockup state the PC value of the the outer frame is irreversibly > lost. The other registers are intact so LR likely contains > PC of some frame next to the outer one, but we cannot analyze > the nearest outer frame without knowing its PC > therefore we do not know SP fixup for this frame. > > The frame unwinder possibly gets mad due to the wrong SP value. > To prevent problems terminate unwinding if PC contains the magic > value of the lockup state. > > Example session wihtout this change, > Cortex-M33 CPU in lockup, gdb 13.0.50.20221016-git: > ---------------- > (gdb) c > Continuing. > > Program received signal SIGINT, Interrupt. > 0xeffffffe in ?? () > (gdb) bt > #0 0xeffffffe in ?? () > #1 0x0c000a9c in HardFault_Handler () > at C:/dvl/stm32l5trustzone/GPIO_IOToggle_TrustZone/Secure/Src/stm32l5xx_it.c:99 > #2 0x2002ffd8 in ?? () > Backtrace stopped: previous frame identical to this frame (corrupt stack?) > (gdb) > ---------------- > The frame #1 is at correct PC taken from LR, #2 is a total nonsense. > > With the change: > ---------------- > (gdb) c > Continuing. > > Program received signal SIGINT, Interrupt. > warning: ARM M in lockup state, stack unwinding terminated. > > (gdb) bt > #0 > (gdb) > ---------------- > > There is a visible drawback of emitting a warning in a cache buildnig routine > as introduced in Torbjörn SVENSSON's > [PATCH v4] gdb/arm: Stop unwinding on error, but do not assert > The warning is printed just once and not repeated on each backtrace command. > > v2 update: warning supressed for other frames than the innermost one. > v3 update: boolean values and comment fixes > v4 update: comment fixes > > Signed-off-by: Tomas Vanek > --- > gdb/arm-tdep.c | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- > 1 file changed, 53 insertions(+), 3 deletions(-) > > diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c > index b5facae..b397ca3 100644 > --- a/gdb/arm-tdep.c > +++ b/gdb/arm-tdep.c > @@ -724,9 +724,30 @@ class target_arm_instruction_reader : public arm_instruction_reader > return 0; > } > > +static inline bool > +arm_m_addr_is_lockup (CORE_ADDR addr) > +{ > + switch (addr) > + { > + /* Values for lockup state. > + For more details see "B1.5.15 Unrecoverable exception cases" in > + both ARMv6-M and ARMv7-M Architecture Reference Manuals, or > + see "B4.32 Lockup" in ARMv8-M Architecture Reference Manual. */ > + case 0xeffffffe: > + case 0xfffffffe: > + case 0xffffffff: > + return true; > + > + default: > + /* Address is not lockup. */ > + return false; > + } > +} > + > /* Determine if the address specified equals any of these magic return > values, called EXC_RETURN, defined by the ARM v6-M, v7-M and v8-M > - architectures. > + architectures. Also include lockup magic PC value. > + Check also for FNC_RETURN if we have the v8-M security extension. > > From ARMv6-M Reference Manual B1.5.8 > Table B1-5 Exception return behavior > @@ -769,6 +790,9 @@ class target_arm_instruction_reader : public arm_instruction_reader > static int > arm_m_addr_is_magic (struct gdbarch *gdbarch, CORE_ADDR addr) > { > + if (arm_m_addr_is_lockup (addr)) > + return 1; > + > arm_gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); > if (tdep->have_sec_ext) > { > @@ -3355,6 +3379,31 @@ struct frame_unwind arm_stub_unwind = { > describes which bits in LR that define which stack was used prior > to the exception and if FPU is used (causing extended stack frame). */ > > + /* In the lockup state PC contains a lockup magic value. > + The PC value of the the next outer frame is irreversibly > + lost. The other registers are intact so LR likely contains > + PC of some frame next to the outer one, but we cannot analyze > + the next outer frame without knowing its PC > + therefore we do not know SP fixup for this frame. > + Some heuristics to resynchronize SP might be possible. > + For simplicity, just terminate the unwinding to prevent it going > + astray and attempting to read data/addresses it shouldn't, > + which may cause further issues due to side-effects. */ > + CORE_ADDR pc = get_frame_pc (this_frame); > + if (arm_m_addr_is_lockup (pc)) > + { > + /* The lockup can be real just in the innermost frame > + as the CPU is stopped and cannot create more frames. > + If we hit lockup magic PC in the other frame, it is > + just a sentinel at the top of stack: do not warn then. */ > + if (frame_relative_level (this_frame) == 0) > + warning (_("ARM M in lockup state, stack unwinding terminated.")); > + > + /* Terminate any further stack unwinding. */ > + arm_cache_set_active_sp_value (cache, tdep, 0); > + return cache; > + } > + > CORE_ADDR lr = get_frame_register_unsigned (this_frame, ARM_LR_REGNUM); > > /* ARMv7-M Architecture Reference "A2.3.1 Arm core registers" > @@ -3824,11 +3873,12 @@ struct frame_unwind arm_stub_unwind = { > return arm_m_addr_is_magic (gdbarch, this_pc); > } > > -/* Frame unwinder for M-profile exceptions. */ > +/* Frame unwinder for M-profile exceptions (EXC_RETURN on stack), > + lockup and secure/nonsecure interstate function calls (FNC_RETURN). */ > > struct frame_unwind arm_m_exception_unwind = > { > - "arm m exception", > + "arm m exception lockup sec_fnc", > SIGTRAMP_FRAME, > arm_m_exception_frame_unwind_stop_reason, > arm_m_exception_this_id,