From nobody Wed May 15 07:55:31 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+87560+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1647319570696804.0277649185433; Mon, 14 Mar 2022 21:46:10 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id HimlYY1788612xQAzlUbkLIG; Mon, 14 Mar 2022 21:46:11 -0700 X-Received: from NAM02-DM3-obe.outbound.protection.outlook.com (NAM02-DM3-obe.outbound.protection.outlook.com [40.107.95.48]) by mx.groups.io with SMTP id smtpd.web10.7285.1647319571042779789 for ; Mon, 14 Mar 2022 21:46:11 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WmLZ0fsUxt/YV8Ib3E9shxyCbeR3id5inujWF2kln4PZDLy0ikHhL6ODZ+1xairQymc10nLhjJ7AU9YdeIIUdP3teLc8wZwz2PCoufgPCUp0afJ+Ikk7tmZwvO6V7HWge2Yu6oU9bTm9t+3VL9Okovvlg35/tL41RYE8XUNiL1JWxSSarkQbIbS0ihc2Od+WN0d7Bm7RZnX/5XW+AYTO0yVm18li9Ax7V41SO+bBEBBYy+TNUNrM04jNZD5vEIHDVpC6bipWsDltyBJLe3WKqp3cEscwIlyGM0WqSRGOV1P12UP0qCsIFmizySu9DFHrgL48OD6HxbPnl5V/M+cLRQ== 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=FFtf2KvjqJM2O+3XPONjp1iS8QdNulE7PBBzH8HyBdA=; b=UBG6EmiLvp3vt+TikIJwzW+ikhAqbg/FsSxpQSEchXVcjeACdAEiFOaEd2XiW96+s9EY+AO/3XtwgGT43zei62bpNSLuZrR2lB7+osOcf8miKAcet5Aov6KWFHDpQEXyZzBCntWKO0AXLHPictWbbDcT+uioaMe1OVeHlKRgCzTzAciXPYV/mnXlVyjXjLAe16OueTmXmK8vh/TKOJeHlx5eQ6xIXihB1pAai0KR3DvMVdToZB4KS7iULc9eVimi/Iq8iRD/0MJ8ZA4Gh9xv6hG20WuF1V9lMZctpUYDozsUtY5cevB0nGMLGBMFlyT63NYkpAOztqVA3bWyvuf+Ig== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none X-Received: from MW4PR04CA0386.namprd04.prod.outlook.com (2603:10b6:303:81::31) by CH0PR12MB5202.namprd12.prod.outlook.com (2603:10b6:610:b9::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.24; Tue, 15 Mar 2022 04:46:09 +0000 X-Received: from CO1NAM11FT023.eop-nam11.prod.protection.outlook.com (2603:10b6:303:81:cafe::f1) by MW4PR04CA0386.outlook.office365.com (2603:10b6:303:81::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.24 via Frontend Transport; Tue, 15 Mar 2022 04:46:09 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+87560+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; X-Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1NAM11FT023.mail.protection.outlook.com (10.13.175.35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.5061.22 via Frontend Transport; Tue, 15 Mar 2022 04:46:08 +0000 X-Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Mon, 14 Mar 2022 23:46:07 -0500 X-Received: from BLR-LAB-SFW01.amd.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.24 via Frontend Transport; Mon, 14 Mar 2022 23:46:06 -0500 From: "Abdul Lateef Attar via groups.io" To: CC: Eric Dong , Liming Gao Subject: [edk2-devel] [edk2-platforms PATCH v1 1/1] BoardModulePkg: Copy device path before processing Date: Tue, 15 Mar 2022 10:16:08 +0530 Message-ID: <20220315044608.29279-2-abdattar@amd.com> In-Reply-To: <20220315044608.29279-1-abdattar@amd.com> References: <20220315044608.29279-1-abdattar@amd.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4a262b52-498a-4dce-0957-08da063eb8ea X-MS-TrafficTypeDiagnostic: CH0PR12MB5202:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: 6KTrHRaS1JUKX2ucy7OINCtqmd6a1m7zdnbC+ySeE5B2a9+caGAOm3raXvoizZlq+OgdU4wT8fwtDOWGnwWLhDXxBRmTTjKD/n65CA4LI0R4zK8AI1hq4/EvUtLzvWTL/OxKCvhK63LkfpwMGRyirY/Qth9W50BY3t5f3WJNaIgP84JD7Tg4B9sw0uqvK7bcORU7omXEwEtYONzDFodDG9eTqBIcP8cm7may2alvdH/aBCxnTyQtZ1anOa+9x2u7dJBJ9r5E7RJZVdiYsLhAjLfbWmxfB3DCRjeRwNrhhwe/DGr2a/eD/dHSIjqZxOI5DGh7trq5HWz1PjBTYGWDBGpkLGAeIFreWU149lVgc5qGfMGAXPTX08ps9zV8twjB4WnEoD0u1LV9AQUEkSYYiiiiM5LqJ0N2NHLTojFfZoQeCCdFQD9xgAmM1UrRncRyG1TFGPLXOxpYJ98GUTUxxil1cELIXoi8xtjWa4i+d9GnfGNsc09wqJIZqMN69bUwdfxNATAd+Ie+ueE0B4QHzprfPWhnrwU3To+atc0dMN5LMjNcCaSWTDncsFsW+PMYhx2KZJyQXn+4BcDJDhvxomOh4wgGaKduugQHxzZP8sGSUt+6mkjUFWsMyuEOPeEYg7aIDdzNNQOL1KuSLCHFqPrUbNf1jySyVKCbXTh2tgIcA/IjwUDOzjc7N7gag4AVb2rNZozGPlB+HqH0Ub9T3g== X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Mar 2022 04:46:08.4556 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4a262b52-498a-4dce-0957-08da063eb8ea X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT023.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5202 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,abdattar@amd.com X-Gm-Message-State: wAchC1VLGBcaLGcLVEev30GVx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1647319571; bh=d5veBIbiGuJ6X/KiKTh2k0cQjJalaERUibx5l581UCQ=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=RgC9RjHLrDIut5YMKEbxsFMF6ZjzmsfeS/mqD4QKgEyJR+3FNoto+D8pdQ6dN08SApt BqgwA4Be4ZMft6w7TcjWYS1snbJJ+RWh8/XevT2rqSFvWOVUIX3KGRrVA7DHr315w+nxk 2GhJhns7zOxpssC6n+/w8uYbdqj8Mrlc5V8= X-ZohoMail-DKIM: fail (Signature date is -1 seconds in the future.) X-ZM-MESSAGEID: 1647319587030100001 Content-Type: text/plain; charset="utf-8" GCC compiler puts the DevicePath PCDs to the read-only section. During boot if try to process the device path after PtrGetPtr it throws a page fault exception. Hence making a local copy using DuplicateDevicePath() to avoid the page fault exception. Cc: Eric Dong Cc: Liming Gao Signed-off-by: Abdul Lateef Attar --- Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib.c | = 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBds= HookLib.c b/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsH= ookLib.c index 0bcee7c9a4ba..8700118d255a 100644 --- a/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib= .c +++ b/Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLib= .c @@ -3,6 +3,7 @@ implementation instance of the BDS hook library =20 Copyright (c) 2019, Intel Corporation. All rights reserved.
+ Copyright (C) 2022 Advanced Micro Devices, Inc. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent =20 **/ @@ -131,7 +132,7 @@ IsTrustedConsole ( =20 switch (ConsoleType) { case ConIn: - TrustedConsoleDevicepath =3D PcdGetPtr (PcdTrustedConsoleInputDevice= Path); + TrustedConsoleDevicepath =3D DuplicateDevicePath (PcdGetPtr (PcdTrus= tedConsoleInputDevicePath)); break; case ConOut: // @@ -147,7 +148,7 @@ IsTrustedConsole ( TempDevicePath =3D NextDevicePathNode (TempDevicePath); } =20 - TrustedConsoleDevicepath =3D PcdGetPtr (PcdTrustedConsoleOutputDevic= ePath); + TrustedConsoleDevicepath =3D DuplicateDevicePath (PcdGetPtr (PcdTrus= tedConsoleOutputDevicePath)); break; default: ASSERT (FALSE); @@ -171,7 +172,9 @@ IsTrustedConsole ( } while (TempDevicePath !=3D NULL); =20 FreePool (ConsoleDevice); - + if (TrustedConsoleDevicepath !=3D NULL) { + FreePool (TrustedConsoleDevicepath); + } return FALSE; } =20 @@ -624,7 +627,7 @@ ConnectTrustedStorage ( EFI_STATUS Status; EFI_HANDLE DeviceHandle; =20 - TrustedStorageDevicepath =3D PcdGetPtr (PcdTrustedStorageDevicePath); + TrustedStorageDevicepath =3D DuplicateDevicePath (PcdGetPtr (PcdTrustedS= torageDevicePath)); DumpDevicePath (L"TrustedStorage", TrustedStorageDevicepath); =20 TempDevicePath =3D TrustedStorageDevicepath; @@ -649,6 +652,9 @@ ConnectTrustedStorage ( =20 FreePool (Instance); } while (TempDevicePath !=3D NULL); + if (TrustedStorageDevicepath !=3D NULL) { + FreePool (TrustedStorageDevicepath); + } } =20 =20 @@ -1031,7 +1037,7 @@ AddConsoleVariable ( EFI_HANDLE GraphicsControllerHandle; EFI_DEVICE_PATH *GopDevicePath; =20 - TempDevicePath =3D ConsoleDevicePath; + TempDevicePath =3D DuplicateDevicePath (ConsoleDevicePath); do { Instance =3D GetNextDevicePathInstance (&TempDevicePath, &Size); if (Instance =3D=3D NULL) { @@ -1074,6 +1080,9 @@ AddConsoleVariable ( =20 FreePool (Instance); } while (TempDevicePath !=3D NULL); + if (TempDevicePath !=3D NULL) { + FreePool (TempDevicePath); + } } =20 =20 --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#87560): https://edk2.groups.io/g/devel/message/87560 Mute This Topic: https://groups.io/mt/89792071/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-