From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (EUR05-DB8-obe.outbound.protection.outlook.com [40.107.20.72]) by mx.groups.io with SMTP id smtpd.web10.454.1607539667458992399 for ; Wed, 09 Dec 2020 10:47:47 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=jmGFuL9m; spf=pass (domain: arm.com, ip: 40.107.20.72, mailfrom: sami.mujawar@arm.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=de11ozc+Wq4XDtVO58tZpt46ZTAphy8tW53hW6xboy8=; b=jmGFuL9mKRjlPST3fplUmE31jD3Tc2nNmDgMfYStM2l4U4QH4ypxA4RsU2pmJ70iGs96AitceNSPjA2Fb0CBI57zwcIKRKOAB5wLh5thYfGifeS0pGD2SSjECzAlI9rBPYxePy+e78ZQ5ivAoqNi0sBfokA8TlmxNyXfVQz5pko= Received: from MR2P264CA0079.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:32::19) by AM0PR08MB5043.eurprd08.prod.outlook.com (2603:10a6:208:166::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.17; Wed, 9 Dec 2020 18:47:45 +0000 Received: from VE1EUR03FT031.eop-EUR03.prod.protection.outlook.com (2603:10a6:500:32:cafe::cd) by MR2P264CA0079.outlook.office365.com (2603:10a6:500:32::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3632.21 via Frontend Transport; Wed, 9 Dec 2020 18:47:45 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; edk2.groups.io; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;edk2.groups.io; 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; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VE1EUR03FT031.mail.protection.outlook.com (10.152.18.69) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3654.12 via Frontend Transport; Wed, 9 Dec 2020 18:47:44 +0000 Received: ("Tessian outbound eeda57fffe7b:v71"); Wed, 09 Dec 2020 18:47:44 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 2a71889da3d9d13c X-CR-MTA-TID: 64aa7808 Received: from a08d53c29784.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id CFDD7EB9-D446-429C-8813-89E47202EC56.1; Wed, 09 Dec 2020 18:47:29 +0000 Received: from EUR03-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a08d53c29784.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 09 Dec 2020 18:47:29 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fDHBl8T+wFhbp6eWXAG+Hh5OnFN9dTuNidRuiNUL0GGpfGiGqsOoPaRuRB6zZH5VLgt5TR4ppgJmhH/SH5jQ6z/N+dEarv+oTdBMkZgui5qC0ogaLssk2HAt4735w8QDU5N3vN/fsfQi8t63GYU2CvD4eL7O01QbePdyxSVy/YTE+l+6TlKoHGVBCROCXXngpr+O6fbPs5L2gVT3NsBzD4QVXRtqXt3fhPS/dtdH84hyJ1Up4rgS8gRffIomu3QZdvlix/R9q4C1vTI7R9eWn7yk0VhMpO2UoMkGeM0HgM/5tlPt6sxUvXrYoMB5xh1F+DuQmRb+/t/lRnf/mX0xFw== 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-SenderADCheck; bh=de11ozc+Wq4XDtVO58tZpt46ZTAphy8tW53hW6xboy8=; b=eB0aLMy8ZM50yWMn99KCTv+3JivSpwdvGGmdIhv/yKtSw7F8Mqle3MfDOWbW36F03/Hevev2CnoA3gtE+IGtyVGRRwcQwz9e1oI+FP5MdEuGfa96sOpZBF1H9AH8H1bxH1a5M3hPtDg4jmpzAgR7bXXVBli11YNQR+dk6eadQFHtOUENK90J2cr+es6c/kCBYC3V9YB1PBq92BxmbkMmgD60YpjxQreGp9fJtJ0Vlymt7VrqZCY8U2vaVukHnJYELqlsp7SMSKqqdYSVZWo1H9/gcbyX8K+xaTcqzxkViLg34ExbAkyTEMBLhRLPpUExPsqaLUmi3K9s+MYamNF7kA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=de11ozc+Wq4XDtVO58tZpt46ZTAphy8tW53hW6xboy8=; b=jmGFuL9mKRjlPST3fplUmE31jD3Tc2nNmDgMfYStM2l4U4QH4ypxA4RsU2pmJ70iGs96AitceNSPjA2Fb0CBI57zwcIKRKOAB5wLh5thYfGifeS0pGD2SSjECzAlI9rBPYxePy+e78ZQ5ivAoqNi0sBfokA8TlmxNyXfVQz5pko= Received: from AM0PR04CA0014.eurprd04.prod.outlook.com (2603:10a6:208:122::27) by HE1PR0801MB1883.eurprd08.prod.outlook.com (2603:10a6:3:4f::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3654.12; Wed, 9 Dec 2020 18:47:27 +0000 Received: from AM5EUR03FT047.eop-EUR03.prod.protection.outlook.com (2603:10a6:208:122:cafe::c4) by AM0PR04CA0014.outlook.office365.com (2603:10a6:208:122::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3654.12 via Frontend Transport; Wed, 9 Dec 2020 18:47:27 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; Received: from nebula.arm.com (40.67.248.234) by AM5EUR03FT047.mail.protection.outlook.com (10.152.16.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.3654.12 via Frontend Transport; Wed, 9 Dec 2020 18:47:26 +0000 Received: from AZ-NEU-EX04.Arm.com (10.251.24.32) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2044.4; Wed, 9 Dec 2020 18:47:15 +0000 Received: from E107187.Arm.com (10.57.26.36) by mail.arm.com (10.251.24.32) with Microsoft SMTP Server id 15.1.2044.4 via Frontend Transport; Wed, 9 Dec 2020 18:47:15 +0000 From: "Sami Mujawar" To: CC: Sami Mujawar , , , , , , , , Subject: [PATCH v1 06/25] StandaloneMmPkg: Fix ECC error 3002 in StandaloneMmCpu Date: Wed, 9 Dec 2020 18:46:51 +0000 Message-ID: <20201209184710.20912-7-sami.mujawar@arm.com> X-Mailer: git-send-email 2.11.0.windows.3 In-Reply-To: <20201209184710.20912-1-sami.mujawar@arm.com> References: <20201209184710.20912-1-sami.mujawar@arm.com> MIME-Version: 1.0 X-EOPAttributedMessage: 1 X-MS-Office365-Filtering-HT: Tenant X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f92d3fb6-510a-44be-7ca7-08d89c72eaa1 X-MS-TrafficTypeDiagnostic: HE1PR0801MB1883:|AM0PR08MB5043: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true NoDisclaimer: true X-MS-Oob-TLC-OOBClassifiers: OLM:8273;OLM:8273; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: fzt0Txsaj8F0NPfv099G9vzUYQMKPhsqruR8PyZDmQKvgTg+0JYtV9jazgNLiGv7RVpiokvSWmPNbRkPc/YU3mSg9JTLhURTjEhh64wJFIL8KVUUFQvnaE5pM+dzlLocZZJdMLiHit/PckBZ99fmgl6abbJAc68f1JP4lpPtxdO3LFf0TWMLcrx6/9JWZv+vOV8h8y6w64R6o8YkAyoJj80uoxG30MRkS+0o2Az+C171k17gCDPupj5glSQlmuqxCFZ2Sl6b5bwtJx+SC6prvIe6UXm+IFrsLhEAtNS4kJI2cSe1GFpPmXTCJDvcey4r+Ti2BxmBH420V+OJOZSTfivSmQtu3d0lN3eRgkTuSrkzPqxQKlbQ3MPfr31UN+Q19mweeLt2K/Qh7KmZ+U3Zig== X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(6029001)(4636009)(376002)(346002)(136003)(46966005)(83380400001)(426003)(1076003)(26005)(508600001)(5660300002)(8936002)(7696005)(4326008)(47076004)(82310400003)(6916009)(2616005)(86362001)(6666004)(44832011)(2906002)(70586007)(186003)(36756003)(81166007)(8676002)(336012)(356005)(54906003)(70206006);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1883 Return-Path: Sami.Mujawar@arm.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: VE1EUR03FT031.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: afcd5ccf-b0aa-4718-ee84-08d89c72dfef X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: w+4UQZMDuOLBrC1OHXMVRkTr/VTsj8pVZtCxe8cDIExcKWeOc5XgxEilsE7O5PS0MQ0g1nS813yF/69pZsKe3Y1OhRZlq4WblcchUPhSpkAJbvZTZM3rGA8TeGU9MN4oF96A8tJtdrrGQo3xFy6EG26yfkemg5z+JA0wj9WZppO+4tbIbNKOaajcKTHI1rsg16iUATsV1EWqQlor5iEAcTDrDthczKhOkm3IYeTz08OrHQuoRgeCCqX4tyHRRvSf32iyocXDR+j0ZTDSAnWgCjvEkIkNJWnfK2HSy0hV9CubMYIwquyGH/SRpqiKSkOhG3wl30yFXLkPiYC53/NuaGANMoZKjKknvGvw81pQrdmFvPhStRM+aOxUxhW6UuzMTwCz6djQSNxqeDWLnJA7RA== 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:(6029001)(4636009)(136003)(376002)(396003)(39860400002)(346002)(46966005)(82310400003)(5660300002)(54906003)(426003)(4326008)(336012)(2906002)(6666004)(478600001)(83380400001)(26005)(47076004)(70206006)(36756003)(2616005)(82740400003)(1076003)(6916009)(186003)(8676002)(7696005)(86362001)(81166007)(316002)(44832011)(70586007)(8936002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Dec 2020 18:47:44.8322 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f92d3fb6-510a-44be-7ca7-08d89c72eaa1 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: VE1EUR03FT031.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5043 Content-Type: text/plain Fix the ECC tool reported error "[3002] Non-Boolean comparisons should use a compare operator". Also fix the following: - add curly braces for 'if' condition statements to comply with the coding standard. - The value returned by GET_GUID_HOB_DATA() is stored in *HobData. Therefore, check *HobData against NULL. The original code was checking HobData which is incorrect. Signed-off-by: Sami Mujawar --- StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c | 19 +++++++++++++------ StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c | 11 +++++++---- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c index 6a25c4c54843ccdc2d745e8e537942d49b1d1141..9738e8bd60149efb45ef1b66139e0cec38b6c1fe 100644 --- a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c +++ b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c @@ -1,7 +1,7 @@ /** @file Copyright (c) 2016 HP Development Company, L.P. - Copyright (c) 2016 - 2018, ARM Limited. All rights reserved. + Copyright (c) 2016 - 2020, Arm Limited. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -84,12 +84,18 @@ PiMmStandaloneArmTfCpuDriverEntry ( } // Perform parameter validation of NsCommBufferAddr - if (NsCommBufferAddr && (NsCommBufferAddr < mNsCommBuffer.PhysicalStart)) + if (NsCommBufferAddr == (UINTN)NULL) { + return EFI_INVALID_PARAMETER; + } + + if (NsCommBufferAddr < mNsCommBuffer.PhysicalStart) { return EFI_ACCESS_DENIED; + } if ((NsCommBufferAddr + sizeof (EFI_MM_COMMUNICATE_HEADER)) >= - (mNsCommBuffer.PhysicalStart + mNsCommBuffer.PhysicalSize)) + (mNsCommBuffer.PhysicalStart + mNsCommBuffer.PhysicalSize)) { return EFI_INVALID_PARAMETER; + } // Find out the size of the buffer passed NsCommBufferSize = ((EFI_MM_COMMUNICATE_HEADER *) NsCommBufferAddr)->MessageLength + @@ -97,9 +103,9 @@ PiMmStandaloneArmTfCpuDriverEntry ( // perform bounds check. if (NsCommBufferAddr + NsCommBufferSize >= - mNsCommBuffer.PhysicalStart + mNsCommBuffer.PhysicalSize) + mNsCommBuffer.PhysicalStart + mNsCommBuffer.PhysicalSize) { return EFI_ACCESS_DENIED; - + } // Now that the secure world can see the normal world buffer, allocate // memory to copy the communication buffer to the secure world. @@ -192,8 +198,9 @@ PiMmCpuTpFwRootMmiHandler ( ASSERT (CommBufferSize == NULL); CpuNumber = mMmst->CurrentlyExecutingCpu; - if (!PerCpuGuidedEventContext[CpuNumber]) + if (PerCpuGuidedEventContext[CpuNumber] == NULL) { return EFI_NOT_FOUND; + } DEBUG ((DEBUG_INFO, "CommBuffer - 0x%x, CommBufferSize - 0x%x\n", PerCpuGuidedEventContext[CpuNumber], diff --git a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c index 617babd5ab4bcb200ee10e19ec6f99c2ef163200..7c004c8013460bb7f1690351aa64eeaa9eab91dc 100644 --- a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c +++ b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c @@ -2,7 +2,7 @@ Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.
Copyright (c) 2016 HP Development Company, L.P. - Copyright (c) 2016 - 2018, ARM Limited. All rights reserved. + Copyright (c) 2016 - 2020, Arm Limited. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -53,16 +53,19 @@ GetGuidedHobData ( { EFI_HOB_GUID_TYPE *Hob; - if (!HobList || !HobGuid || !HobData) + if ((HobList == NULL) || (HobGuid == NULL) || (HobData == NULL)) { return EFI_INVALID_PARAMETER; + } Hob = GetNextGuidHob (HobGuid, HobList); - if (!Hob) + if (Hob == NULL) { return EFI_NOT_FOUND; + } *HobData = GET_GUID_HOB_DATA (Hob); - if (!HobData) + if (*HobData == NULL) { return EFI_NOT_FOUND; + } return EFI_SUCCESS; } -- 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'