From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id E963EAC1C52 for ; Thu, 9 Nov 2023 20:40:41 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=jjmoHqz+ROqmVcbOLWs9fh4kvN2EaaweS3poUiqv6vQ=; c=relaxed/simple; d=groups.io; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-Transfer-Encoding; s=20140610; t=1699562440; v=1; b=PylugdNrgRcj3bJwJAkP0yQ6KF4MD5hFnZhtrpdkJG9Pt0q30HkRVO/sO6xsBNn7Iy5lv1Dd l4dQkvwoaqSMS5Nw0AyC+2cMHjzZSZUZM38VTJvbiHDBulv7oDNoFtq7O5zNhhLfRV/f4WycHqT xIc1r3e4CdP3J2DTkC8mWhoY= X-Received: by 127.0.0.2 with SMTP id 0EIVYY7687511xsbCY7OStLO; Thu, 09 Nov 2023 12:40:40 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web10.9135.1699562439439259269 for ; Thu, 09 Nov 2023 12:40:39 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10889"; a="388930261" X-IronPort-AV: E=Sophos;i="6.03,290,1694761200"; d="scan'208";a="388930261" X-Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Nov 2023 12:40:38 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10889"; a="829437361" X-IronPort-AV: E=Sophos;i="6.03,290,1694761200"; d="scan'208";a="829437361" X-Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga008.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 09 Nov 2023 12:40:38 -0800 X-Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34; Thu, 9 Nov 2023 12:40:38 -0800 X-Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34 via Frontend Transport; Thu, 9 Nov 2023 12:40:38 -0800 X-Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.169) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.34; Thu, 9 Nov 2023 12:40:37 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c1g11D4jRfV8D+oGXw9EZVvetHJ0yy/IcXH/BkgELV1w1K6Ug7JvtDVCZXw6JVeV2IOzawyqB5k543F0+qaGkjyHvkeTwpOZZ02AGwuCJm4CD6RtPAXfGrUJpfnlRVeSh15Ui07hxk7FfByjLpJeTO9UGp83pNbp0u2l+cxvKGondc3s8rr1tNHVsYjPIIEnZOZv/NkDgjR2Q202xX1b89gg8S9iGffWwfkV73Q5JunBKLBGeUnkfcVFxaJHU2TPiIX1qYF20SiDb35mjdudxYXj++gC0jj3G4z7eOSu1L9Tlxyd4uV9Pe5Zz6HnjwwFTmg4PjD2JnkRish2F9xn3g== 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=lZWJqhFGFFRdx3/K9lWVAd3AhSo9HfHf9ptMWbkFinY=; b=il+K00jLG6RaS3ReT8s/9ZsQjWOmQ+NVeD53zi33RFaRjIKvJCHcqTqSxz7oMFZHhLMmUn97nrolg07xreSkVmiqqrZoYdUYnbcqyBAgOWTb9h363LqVuWyshDp3k3Q0iUNOs0SBHlYxTETIa37WI5PT+o6l94dI8XzuDywVd9JL9+EJnkKoTZ3FXnnTGqFHVXOs615f/Voi9BG8bKFwOQGA+S5tahUICAz43OMEMAqQoJUoBtOiLEWWDfMu23esQlujCFAEoPGn2ucTdc9tj7NTwNNl3CslF+6utDr+8KKwwIA7VDEeBW8rXh9vZkrsPTkE9S+LvGi7zfHv6OI7kw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none X-Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by CH0PR11MB5299.namprd11.prod.outlook.com (2603:10b6:610:be::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.19; Thu, 9 Nov 2023 20:40:35 +0000 X-Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::ac67:8c2e:235d:db4f]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::ac67:8c2e:235d:db4f%4]) with mapi id 15.20.6977.018; Thu, 9 Nov 2023 20:40:35 +0000 From: "Michael D Kinney" To: "devel@edk2.groups.io" , "rsingh@ventanamicro.com" CC: "Ni, Ray" , Veeresh Sangolli , "Kinney, Michael D" Subject: Re: [edk2-devel] [PATCH v3 1/2] MdeModulePkg/Bus/Pci/PciHostBridgeDxe: Fix OVERRUN Coverity issues Thread-Topic: [edk2-devel] [PATCH v3 1/2] MdeModulePkg/Bus/Pci/PciHostBridgeDxe: Fix OVERRUN Coverity issues Thread-Index: AQHaEzO8aXKOvlzS8k6LGBU04/47OLBycnBw Date: Thu, 9 Nov 2023 20:40:35 +0000 Message-ID: References: <20231109173908.364630-1-rsingh@ventanamicro.com> <20231109173908.364630-2-rsingh@ventanamicro.com> In-Reply-To: <20231109173908.364630-2-rsingh@ventanamicro.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CO1PR11MB4929:EE_|CH0PR11MB5299:EE_ x-ms-office365-filtering-correlation-id: adb2d80f-dbb5-43c5-1464-08dbe1642024 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: w1JctGYf87SOyEkhkQ+zsOlZEngWO2sTxVI5CsO8zgF0zBsTlM2e4XuCN/HmdA0/pfvvU7J8ZDNKvtcXrVpRv4ODujZafviI13/BxMRqaSm5Gr34qzEJPRsPV7du04hyCrtkFVcht+HqLqupI4SfjEwYpxBPaklcMgxfOsQmneaI9cpROPreCr8cZznhvfToPEiCwZq2/tPFskrJ9SaKBsL0tnxxmCrdUG+/B/H7SkxZqoCIag24xpYMMEz22JsR07js7gDER9bhb2XewcK+C6kx3i3F8Vmls7p6r6GOnSNpSYtx7nIM5k4x3yzsueVYbGSV0GrDpSDdOsD4NihV7JJjVPom1HpU9O+tYTdvz9d2WiRSpJnvtUQTftkXl4P//L4EiPkn3y/ZjVf+DTIjMRCN3njIT/X6xLURzrGXW9fIDgyHadKg2vwBDUwEaFg9deK/VL25lWn99aVwHGduGdpd77suiNEcDCXenFuzS6PTvcjUCScxeYuDsJQSY2Cj3mutsuzcJLbjDcnyv9Lq+2clMPWyhmbsZE5pknqYxGwII5GJV4HmXeBoEQQh/Uxs+Q1Opv105J+GJ5V7s7Y/IbMPioHv2/hpIqgmpjEhPYWcWW/bsw6uog6fjbKNIPLkqeUHY96v1eezTS/M1d+rug== x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?3zgD27zC1wlv6wFQmpozK3SRU4k12FknYI1GsAorAXCNlaHoZ/sdGGn0cJT8?= =?us-ascii?Q?eDqpRkLRyqqw6WYtAqk2Oe4LUuyHdhRhnKjNXL489qBQwAmstsdVHyOadfl2?= =?us-ascii?Q?fIpRlTJYGKnN+6Y/hncWoHz/7E01mVbxZasI37biEvg8WFSafox6yMY86K3O?= =?us-ascii?Q?nmUuMuhTyWPfDEnWEHR6HjvLKXlawuVMP1AiK0gyUugTWRHkAxlV28m3fReQ?= =?us-ascii?Q?dg45D5BGfphcfqs2tnsxd0ZXOJTqYfdOIUze3edyXHy2E+kW75pHa6rt0TPr?= =?us-ascii?Q?bSFO39euEbldCZ6Ot/v77e75InnZWWFO63lUWuFHfBosznp3/TFXjztci5m6?= =?us-ascii?Q?vtNyc0Sp2Jrf0DkOr2CMT/Oh3JEaK1w+8g7NqIc2NZbZIp+V6ofFQIyAsAs6?= =?us-ascii?Q?CNkLVsWXTNpv+EmSRaNKBloRpbnKiYTYEYsK9R8LESTRr98e6JalVh09navl?= =?us-ascii?Q?TdD5r5PmJXdgx9px2ChgaE38PM0Js2AY2qd4xwA6fq2pJLWXCfEjs+CN7cO1?= =?us-ascii?Q?r0QhTQ+0LwDtMZ6trHl8oip8hwQFwkwx2vHu49vibApv/UewC0LGl3GjbEuQ?= =?us-ascii?Q?aYAzNyeo2xfIfikSxX7OVXXir7sA91h8KDfs+5SuQrtQRr24fGLYnrsIJ6HN?= =?us-ascii?Q?kPeXoXg3MzmyHyYbdvgRgcT22Kgb2VdMSp4hZomY3NzVZcoL42SDYz8JGprv?= =?us-ascii?Q?j+odGc5xyoPxWrYk4l/0h20VHKN6pLTpcOqsLdrCprLRD7GNTFBix/HE62IN?= =?us-ascii?Q?eX32HTSMpjSQYzf6of5yvhJRRQcc5BTru4suWYUOpXNpqLfBRZ/s7Pfc5+M7?= =?us-ascii?Q?jJeqTfwzrnfUBCqaVoQSf5pjqaSdAZ8EEkq5YxT6uy+Ok1OUBXm5j1WmZvO+?= =?us-ascii?Q?gRxVCcmtxv1PS+XOOsYi0BKhUazB2aOJy30FiZxufm/mepKVC2pKQBu1u+4c?= =?us-ascii?Q?CFyKVZlK6b1dd6DySWkBfFdX5uHxaHIzbLF696tEFuP/vm22BkgNBw6TvSRK?= =?us-ascii?Q?0Pxeh30/dK+JlaU+JboItSLRO1rhx/n5LM0ASqSp08pcLbZZp+xUcLmbfMl9?= =?us-ascii?Q?MDeSEHQxaiM8NirtVQJbniqWQKVmLRYTTElyNG8qpu2wlkLc9CG0EEXofU0a?= =?us-ascii?Q?e9636OnUEf5ouBD6r9FpMsjLEzILF3bsgsJDxRLVGP4kKBWQ22Hg3Bc6KKyY?= =?us-ascii?Q?Pp9zGN/XYcHdwR+x9DbsEWH/WmZ5TFc8G4SfCMthAjcrDqTKHO4WzVeof2ON?= =?us-ascii?Q?+ZIKxWJZwZBjG4gqYwmgA3XrfQ4BvIFa6e+s6xWjy2pdBYcZJbCfaIc5ZXaN?= =?us-ascii?Q?sKtHIlpBrUUDS1fVOFDuDQu5CuJkWp9ardpS7HUfb1Un/OfENaFA/JbDGgt0?= =?us-ascii?Q?FP+wgz/nO21gcNytgu1O6te9cCyeekZCO0e+Ucs6xvUMPYtbIDp7cOeS0XTx?= =?us-ascii?Q?gsKWVMwfOFIDMYIzJaVQHQKhCT+VF9hT1PALTsMmh8qfTF4WCneJzrr8zbaT?= =?us-ascii?Q?8rDFyhR3ESxdZVES74Qo3kRMMEl2rlyvgGiIM0Pp4cVXObH3c1sb6cDfLxZJ?= =?us-ascii?Q?W3RjDiNjUNxoB10TsxGtF+QJU2Jsp3MMaha/BIDoW+R2uGM5P9jggMzopGVp?= =?us-ascii?Q?BA=3D=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: adb2d80f-dbb5-43c5-1464-08dbe1642024 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Nov 2023 20:40:35.5149 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: RNYSPVm/O/lqozpFuTUCDoHV4tidxm9re2EUnddtE+/NyNoAQixUFSSwbCpWRgDEvaeHxHNozAJI8B+3pizXvFI/ruinnL74AsiGtkpfazA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR11MB5299 X-OriginatorOrg: intel.com Precedence: Bulk 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,michael.d.kinney@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: Q9aPFZHIpKRiBSKzmrh2Uxvbx7686176AA= Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=PylugdNr; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io Hi Ranbir, A deadloop without even a debug print is not good behavior. If this condition really represents a condition where it is not possible to complete the PCI resource allocation/assignment, then an error status code should be returned to the caller of NotifyPhase(). Perhaps EFI_OUT_OF_RESOURCES. The other ASSERT() conditions in this API should likely be updated to do the same. This may also require the caller of this service, the PCI Bus Driver, to be reviewed to make sure it handles error conditions from NotifyPhase(). I recommend you get help on the proposed code changes from the PCI subsystem maintainers. Thanks, Mike > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Ranbir > Singh > Sent: Thursday, November 9, 2023 9:39 AM > To: devel@edk2.groups.io; rsingh@ventanamicro.com > Cc: Ni, Ray ; Veeresh Sangolli > > Subject: [edk2-devel] [PATCH v3 1/2] > MdeModulePkg/Bus/Pci/PciHostBridgeDxe: Fix OVERRUN Coverity issues >=20 > From: Ranbir Singh >=20 > The function NotifyPhase has a check >=20 > ASSERT (Index < TypeMax); >=20 > but this comes into play only in DEBUG mode. In Release mode, there is > no handling if the Index value is within array limits or not. If for > whatever reasons, the Index does not get re-assigned to Index2 at line > 937, then it remains at TypeMax as assigned earlier at line 929. This > poses array overrun risk at lines 942 and 943. It is better to deploy > a safety check on Index limit before accessing array elements. >=20 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D4212 >=20 > Cc: Ray Ni > Co-authored-by: Veeresh Sangolli > Signed-off-by: Ranbir Singh > Signed-off-by: Ranbir Singh > --- > MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridge.c | 5 +++++ > 1 file changed, 5 insertions(+) >=20 > diff --git a/MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridge.c > b/MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridge.c > index d573e532bac8..c2c143068cd2 100644 > --- a/MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridge.c > +++ b/MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridge.c > @@ -939,6 +939,11 @@ NotifyPhase ( > } >=20 >=20 >=20 > ASSERT (Index < TypeMax); >=20 > + >=20 > + if (Index =3D=3D TypeMax) { >=20 > + CpuDeadLoop (); >=20 > + } >=20 > + >=20 > ResNodeHandled[Index] =3D TRUE; >=20 > Alignment =3D RootBridge- > >ResAllocNode[Index].Alignment; >=20 > BitsOfAlignment =3D LowBitSet64 (Alignment + 1); >=20 > -- > 2.34.1 >=20 >=20 >=20 > -=3D-=3D-=3D-=3D-=3D-=3D > Groups.io Links: You receive all messages sent to this group. > View/Reply Online (#110993): > https://edk2.groups.io/g/devel/message/110993 > Mute This Topic: https://groups.io/mt/102490513/1643496 > Group Owner: devel+owner@edk2.groups.io > Unsubscribe: https://edk2.groups.io/g/devel/unsub > [michael.d.kinney@intel.com] > -=3D-=3D-=3D-=3D-=3D-=3D >=20 -=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 (#110999): https://edk2.groups.io/g/devel/message/110999 Mute This Topic: https://groups.io/mt/102490513/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/leave/12367111/7686176/19134562= 12/xyzzy [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-