From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mx.groups.io with SMTP id smtpd.web09.17958.1653237022749422595 for ; Sun, 22 May 2022 09:30:23 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=AL/XAUYh; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: jian.j.wang@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1653237022; x=1684773022; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=W6CEeQ6k3BdMPC4IOjdSLnG2Wk0GnCIoY4lzcLEwuXU=; b=AL/XAUYhcG33EAynhIF6gyUp/CXcOOlPHCvN2nlxeNCt9yY7674qdjY9 /GkusF3DzrcqKCiwAtUHCFBQyAjaa5FBpF9ArcHAx25gGnH/ptgwaW1Ja kQJW9wjmtnW5V2+55ecRa/Hoc3UxgP34hKH8hRc3YK6Ik+9TObgXqlfdh J2yAa0LjInR1U/tO/38rviWQrfx+OyhwbDjQsGFJaCBGNbv3s9XXX7yNn kZia2l6PKWlMp9Hs3STCC+mCM4Wu6VgAAhjokrYUXi09LQ51MY/aakiwQ SMbd++mPviDLFcfdWClHl9N9oI4/CeXeVYpjK740CcJPo8UaNnI1w/Yth Q==; X-IronPort-AV: E=McAfee;i="6400,9594,10355"; a="273000949" X-IronPort-AV: E=Sophos;i="5.91,244,1647327600"; d="scan'208";a="273000949" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 May 2022 09:30:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.91,244,1647327600"; d="scan'208";a="628975788" Received: from fmsmsx605.amr.corp.intel.com ([10.18.126.85]) by fmsmga008.fm.intel.com with ESMTP; 22 May 2022 09:30:21 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Sun, 22 May 2022 09:30:21 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) 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.2308.27 via Frontend Transport; Sun, 22 May 2022 09:30:21 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.172) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Sun, 22 May 2022 09:30:21 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SPm2y5LJkX5uqyLjVTtO+4ZL2uDVm0XO/0VUOFILqJUa8AGIYBCd3agjnjPoaegJ1ReVIA1eGVp4Qhz9frDfiF9mFmKUykkXfGGkpU99/S2girlaNnds8//Bf5J2EnUByuwlUlQKFo79cPWT/tUxsAywUjiduZHbhAHUX+ZQt/o0d3fDR1cb74tFdyamc1jsTxtOwmxB/GNKwQeD8XRrGJ+/MbzuVm1AY8fxF2EW42grkmcZiWwxkfbYvc1ZffYFIxLTyQoelPfJMYXtKwtKlfYdBC1Wd0jvTgvzKLSLK4DrtSDeIeZWB8o4jtaOXgKQV+pNysem1Pxvr/sljfnuPQ== 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=ec3A0wton2lTajf60SlLd492g27EBrALlVK/mLSB+LI=; b=aVYmlqq0a7C45jflqz3KMz5QiiKm/wbU7cNp479jFha4s7jmFjLQLwEhNpfbjcIAb350ZXcrNwRHqqJlkq6iQyFSayJDANhjRBGcTu3qeIks+/mbhSZmEV/NuCGscfz4ml0PgI13dxqRea8nIpTLmqY0TozFNlZGeTFmJcBAeb8zmjzIVFKZNrRI3xMpovNkSKwR/pJycE9h5sF6hLZqp7KFcJjYHVuRVBMCOG3AZuZlVvYHYaTHoy6ZNVlSL/Di5XTscZkcC6A9UWQq3NBrZlkmgmJIaBtPR9pJmOjlqlKwlHFPws42O/mcBHjsMV5ZeG9ah5jHEDkWVs+oyZCScg== 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 Received: from CO1PR11MB4945.namprd11.prod.outlook.com (2603:10b6:303:9c::8) by SN6PR11MB3501.namprd11.prod.outlook.com (2603:10b6:805:d4::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5273.22; Sun, 22 May 2022 16:30:19 +0000 Received: from CO1PR11MB4945.namprd11.prod.outlook.com ([fe80::a420:db2c:31db:7906]) by CO1PR11MB4945.namprd11.prod.outlook.com ([fe80::a420:db2c:31db:7906%9]) with mapi id 15.20.5273.022; Sun, 22 May 2022 16:30:19 +0000 From: "Wang, Jian J" To: "devel@edk2.groups.io" , "Ni, Ray" CC: "Dong, Eric" Subject: Re: [edk2-devel] [PATCH 3/5] CpuException: Avoid allocating page but using global variables Thread-Topic: [edk2-devel] [PATCH 3/5] CpuException: Avoid allocating page but using global variables Thread-Index: AQHYbFQ3BDXuU9mZaUiYC8RFh0VDzq0rGb8A Date: Sun, 22 May 2022 16:30:19 +0000 Message-ID: References: <20220520141549.108-1-ray.ni@intel.com> <20220520141549.108-4-ray.ni@intel.com> In-Reply-To: <20220520141549.108-4-ray.ni@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.6.401.20 dlp-product: dlpe-windows authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 1e71efb1-0c0c-4c51-5cfc-08da3c105c74 x-ms-traffictypediagnostic: SN6PR11MB3501:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: /dxiF9rCghUmOxtQiy2tBG/aTxxeRhBYNY88Q75nOe27a61VFxOfIZhiy+xnGmwTUN++usTczquVp4ovql4q8cyFLCq8rLLxrIKfU8QPD/M8PhdD/l0nAjZaiqkHiU4BQTbekfZsKeOq+hJUuG791g9F9s9172NKIdYS6bKWfV2oRSiX2CbThUPonPPkBpkHRGslYXXHUEgiXc+HzA6lUSMsDOdzkAWXd1WO2LULAn2GYi9aGCiGDUq+v8CiqdRjyUOcdtHhu8D1Gw9/CBAmlqqwl7u/A8/kvZFlyXjNIXO+rMkkMvAhrSMAMRnOF/R8J+dRuTs0yjVubwxwEjXBtMdy7JKevd5skQ9Q78NSVlG2S+bHVLaeC3Ogl2TMVRhLsae49yaXMRezZ4py53F+EPTdQdkcmXItO0evICudN98JtuPxvhoznMbwaGQx8Lqpakx/NO5L3UU/ow7YCO27jv0P2nSdrsA9ZX2oRaKmCn8+fxDMfTp34GuV78nqzzZyd7GYon/pPzDDCG2AnlmO9+EpRS1PAybUXUgotqH3nnl4CgLYVeg60AUBhQWAOC7tghoysch/ixFHUEAkEUpOi067TICDAdGFqwg9qiLQk2UyrTLav4LbdRxzg87HX1u8JHrfYoAlAzcuqHrhVmv72d9fhW/KGsyVh41+G7wfEksb63FGP1MmIEf06Dgu7lRyE2zYLt3hoLj8ssEbLWaH6LyFD93YsDQRbXUDtdxom3izPsNsz3hnv0VG3pUqti3ykHFSVXnCQd0EHmCwwOD+hg5xOEuCpMrloaXVaCwAlV2A+Y5RuuExU9laG623m/GSTSSpb0KR/uZKqVXZwbQQ8g== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4945.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(71200400001)(38100700002)(66946007)(66556008)(86362001)(8676002)(55016003)(33656002)(4326008)(64756008)(66446008)(66476007)(76116006)(2906002)(107886003)(186003)(110136005)(122000001)(508600001)(6636002)(53546011)(82960400001)(966005)(5660300002)(316002)(83380400001)(6506007)(8936002)(26005)(9686003)(7696005)(52536014)(38070700005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?g6GfxzOj82ZaIqrEAh9r4X17M/RdSX+EadjOk1YtNEkf7m3kgapLpzLBT3HV?= =?us-ascii?Q?rWc74NS+K7ufj9jsMHRg9/ILphd6FjPKDQp1TnBF86BuF/N4ir09mOlERard?= =?us-ascii?Q?OoNQongzrOCqT++42QYuVKML8cw604Ju8VruQWBKcylvR2AUkek1O39OhmIl?= =?us-ascii?Q?rtbf0OrWLBIXL01bCHmZIVxEtHX+033skSjzjqk+ZAGCc48FyPWB5hC5HrpR?= =?us-ascii?Q?VeiYyByPNCkJmIHQD/qNwhieHV33DB6/rgNcT4dXSyEfiZlT5QnpPxq9ctRK?= =?us-ascii?Q?reuCRJuEAtriQrgr//6mvvLalRbFpJ9sS0Tigx+661se2HThMMNLwFCqYj32?= =?us-ascii?Q?wuULlWhS5GX8S6B7C09CE6HhGcHjlLhB5IhRF6q7Um3V6kBAzmTeVnyydSGc?= =?us-ascii?Q?ayY5co3V2X0KsTlTrzaalAL4eLfTgJfudiOj0h7pIBSJ9xbEEQvAer8HIBu3?= =?us-ascii?Q?yHB5ovVKBoENVd1Gdqmg7YzachcqJAsRcOVP0GpygOXZrRQQNQgPnN65U2ug?= =?us-ascii?Q?EKxVC7xGIfLx/Bj7ey45rhgoynygEDha2v6IRQ0DMAx5Ts5a8xMgkc0GiTnM?= =?us-ascii?Q?UXHiAKQ/1GNkFNl5r0fieC/XoHmtJrHETV5BcotV3EMP7ZXo5j7g3NDi8F/Y?= =?us-ascii?Q?reTx1DHgXiS+qvknOn3Fq/SeZ5Od+ua6BV86ZPRybfRQSWUF5RAQXWbSEbIa?= =?us-ascii?Q?ckPFflsTcjN5fsnslsMU/LLdBAY9DQHzv5iIe/ZFOldCBjV82/CIMyHaDllg?= =?us-ascii?Q?IeHA3ILUZRKCLwh9jkp8znGJuTfgCdRjpogRitcKQCeUB2GasqninWQaS27/?= =?us-ascii?Q?NaFebqJOwQO4lDyLH/599esp3hVMvRbqcYRq0V50aI00I0yuMEMk7OSo2l7i?= =?us-ascii?Q?6ntX5aIhu/PP5np04HSq6Qf1G07uon6VrOkFsd7sa6CvCosaAt3TUabk9CPo?= =?us-ascii?Q?wpNqVm0FlyQsDDI52urvtM0o4ps8uDc9iw5h2/VRA4ZGIHdVHXvnT3D65qu5?= =?us-ascii?Q?b4gO9RRxZ1+d8SPEBnTOCgd6Vqle2wTjRqDsOlr79q7oGIm6kfPNemxT75TS?= =?us-ascii?Q?tgzyte2+Z+VcqvHNMahNwg4YS2bBSzi55BCvdOix6kLFFSyVxfNwBrCFruhK?= =?us-ascii?Q?9tDyPVnmsJFXbmcEzetN8WZyqszAtx8RHw493XvPPSs6XSC4NGX3m1tZSD/U?= =?us-ascii?Q?X576ie+SZR/r+zvp0rOFrCKNnG//reYxetDiJZEL5fs17klP55RYXlhkQMQA?= =?us-ascii?Q?AZenDHL4Ft1mG7WGn1C8csk35cURG1VhSXS+CbUlgcfWoeNoPO6z+D70lcUH?= =?us-ascii?Q?2oMjy2UJXidcAnS1r3j/Qw3mAYfj2JzoeWOFZGhO8T7jlI934u78AvD+u5y8?= =?us-ascii?Q?s+1O8HV3LNW2k+FZwcAVc59Izra304PHc7w1kZjpks8IoCi7x39wgfYWYf9o?= =?us-ascii?Q?lC9+L7ewqSuY4FLNEsQQMe6fa6HGSEwuxHpEyU/CZ7W7dDy0ZPgwvDyAEUnK?= =?us-ascii?Q?7LLxf0OEiSGsRFuyR9ZH9IrrwL0kuoL0Se5pwenZZNwcfQ/0EfhTJeohAg4I?= =?us-ascii?Q?gvs++r+O4tpOb1ybcKRmj3xOwIe9kivGZjZ8lRiE3rYux5ta0KS0VbTQW0+/?= =?us-ascii?Q?ZQnz+akw2yfGC7oSj2hciobLfA3oExI/6XqQbfzoF4kYH9qjSWsroVjmW7nA?= =?us-ascii?Q?UPlg6eqBxkAF0MXbvjCEJUjDWvw29UY4l9aGmqWv6s1rv3lCMC5c9g6l5PKT?= =?us-ascii?Q?F8tdUAOBQQ=3D=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4945.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1e71efb1-0c0c-4c51-5cfc-08da3c105c74 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 May 2022 16:30:19.4307 (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: XxLmYH2NJvPFcrSpzFIyiCsfm8lLK7mv9X5/qPmKTvqw2/yAnt+e15oE5FmDSMgQaz/rdS7fdOazS11xn6lSBQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB3501 Return-Path: jian.j.wang@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Jian J Wang Regards, Jian > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Ni, Ray > Sent: Friday, May 20, 2022 10:16 PM > To: devel@edk2.groups.io > Cc: Dong, Eric > Subject: [edk2-devel] [PATCH 3/5] CpuException: Avoid allocating page but= using > global variables >=20 > Signed-off-by: Ray Ni > Cc: Eric Dong > --- > .../CpuExceptionHandlerLib/DxeException.c | 24 ++++--------------- > 1 file changed, 5 insertions(+), 19 deletions(-) >=20 > diff --git a/UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeException.c > b/UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeException.c > index da5b96d6c6..f139131a7c 100644 > --- a/UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeException.c > +++ b/UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeException.c > @@ -14,8 +14,8 @@ >=20 >=20 > CONST UINTN mDoFarReturnFlag =3D 0; >=20 >=20 >=20 > -RESERVED_VECTORS_DATA mReservedVectorsData[CPU_EXCEPTION_NUM]; >=20 > -EFI_CPU_INTERRUPT_HANDLER > mExternalInterruptHandlerTable[CPU_EXCEPTION_NUM]; >=20 > +RESERVED_VECTORS_DATA > mReservedVectorsData[CPU_INTERRUPT_NUM]; >=20 > +EFI_CPU_INTERRUPT_HANDLER > mExternalInterruptHandlerTable[CPU_INTERRUPT_NUM]; >=20 > EXCEPTION_HANDLER_DATA mExceptionHandlerData =3D { >=20 > 0, // To be fixed >=20 > 0, // To be fixed >=20 > @@ -96,27 +96,15 @@ InitializeCpuInterruptHandlers ( > IA32_DESCRIPTOR IdtDescriptor; >=20 > UINTN IdtEntryCount; >=20 > EXCEPTION_HANDLER_TEMPLATE_MAP TemplateMap; >=20 > - RESERVED_VECTORS_DATA *ReservedVectors; >=20 > - EFI_CPU_INTERRUPT_HANDLER *ExternalInterruptHandler; >=20 > - >=20 > - Status =3D gBS->AllocatePool ( >=20 > - EfiBootServicesCode, >=20 > - sizeof (RESERVED_VECTORS_DATA) * CPU_INTERRUPT_NUM, >=20 > - (VOID **)&ReservedVectors >=20 > - ); >=20 > - ASSERT (!EFI_ERROR (Status) && ReservedVectors !=3D NULL); >=20 > - SetMem ((VOID *)ReservedVectors, sizeof (RESERVED_VECTORS_DATA) * > CPU_INTERRUPT_NUM, 0xff); >=20 > + >=20 > + SetMem ((VOID *)mReservedVectorsData, sizeof (RESERVED_VECTORS_DATA) > * CPU_INTERRUPT_NUM, 0xff); >=20 > if (VectorInfo !=3D NULL) { >=20 > - Status =3D ReadAndVerifyVectorInfo (VectorInfo, ReservedVectors, > CPU_INTERRUPT_NUM); >=20 > + Status =3D ReadAndVerifyVectorInfo (VectorInfo, mReservedVectorsData= , > CPU_INTERRUPT_NUM); >=20 > if (EFI_ERROR (Status)) { >=20 > - FreePool (ReservedVectors); >=20 > return EFI_INVALID_PARAMETER; >=20 > } >=20 > } >=20 >=20 >=20 > - ExternalInterruptHandler =3D AllocateZeroPool (sizeof > (EFI_CPU_INTERRUPT_HANDLER) * CPU_INTERRUPT_NUM); >=20 > - ASSERT (ExternalInterruptHandler !=3D NULL); >=20 > - >=20 > // >=20 > // Read IDT descriptor and calculate IDT size >=20 > // >=20 > @@ -137,8 +125,6 @@ InitializeCpuInterruptHandlers ( > ASSERT (TemplateMap.ExceptionStubHeaderSize <=3D HOOKAFTER_STUB_SIZE); >=20 >=20 >=20 > mExceptionHandlerData.IdtEntryCount =3D CPU_INTERRUPT_NUM; >=20 > - mExceptionHandlerData.ReservedVectors =3D ReservedVectors; >=20 > - mExceptionHandlerData.ExternalInterruptHandler =3D ExternalInterruptHa= ndler; >=20 > InitializeSpinLock (&mExceptionHandlerData.DisplayMessageSpinLock); >=20 >=20 >=20 > UpdateIdtTable (IdtTable, &TemplateMap, &mExceptionHandlerData); >=20 > -- > 2.35.1.windows.2 >=20 >=20 >=20 > -=3D-=3D-=3D-=3D-=3D-=3D > Groups.io Links: You receive all messages sent to this group. > View/Reply Online (#89918): https://edk2.groups.io/g/devel/message/89918 > Mute This Topic: https://groups.io/mt/91231769/1768734 > Group Owner: devel+owner@edk2.groups.io > Unsubscribe: https://edk2.groups.io/g/devel/unsub [jian.j.wang@intel.com] > -=3D-=3D-=3D-=3D-=3D-=3D >=20