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.web10.3695.1686127203075150376 for ; Wed, 07 Jun 2023 01:40:03 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=imPdgS2w; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: ray.ni@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686127203; x=1717663203; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=ftBdULVfaJhkCgWv/blknHLM4gCb5D32zr+RKtQZq4o=; b=imPdgS2wPVwK60nUYLgrULoNA7RUg/Mr3sBqxFGFGt+aVGEO3v76M/Z3 6Io7p991dE5jYgTr9EZxkuRBm/RQkL7p7bIb9Dq/5snVLXlN41pfLxGXd TRvWBQ7gqZIBmztyjYD9YfvnCcKktqvQ9xKEkNoxNR3HC0pXXdsV0mAb2 ote26hViu6SAfBy0qF/EO9EoyM6FrRdtflHP/V0erv82GvA/zO853CRgd /n5ZDuvgq1D3gX9mlZx0eakCg4pz5x392cu6rhpWGN2nAjeHV46wCK7gE yHl3fHWzZO/prOgETJ32XpVIjqXdzUsJRMLJUF6DH65eCLvEq2tucsVJA w==; X-IronPort-AV: E=McAfee;i="6600,9927,10733"; a="360252767" X-IronPort-AV: E=Sophos;i="6.00,223,1681196400"; d="scan'208";a="360252767" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2023 01:40:02 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10733"; a="779310749" X-IronPort-AV: E=Sophos;i="6.00,223,1681196400"; d="scan'208";a="779310749" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga004.fm.intel.com with ESMTP; 07 Jun 2023 01:40:02 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 7 Jun 2023 01:40:01 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) 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.23 via Frontend Transport; Wed, 7 Jun 2023 01:40:01 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.105) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Wed, 7 Jun 2023 01:40:00 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oCABhont+8NjRdbyiXIJN3pVgzRDC2UMAnqDE6gZ/tI53jSaOgZp7GjqlgYHM8RpV5QX3Qth3Mx49f5ZaIzN4rsunadIGmWUd/gKC46v560xCcQKfrTJBFl9wryfk4aTkd1X5p9MPS7lwEu0USqOhHkSAoMGW49+P3O+faAxBVknjjiPv626oZLEuxNvZOyY6CP/pOJuMI5Udlu1CRIBsDQPpWXgzRqRx/MYcOonaOCEPYmoXCmVhPrZjBXRqJnK9oOlcjoJCCEDHEf17TKzSaiS8t+Sy1tMCowGmtgwsl3DRftJVK+9RQJoq13PDFdycomYl18S/mprrlfX+BQ57g== 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=pn326CIJKcE5QN6G7TTHbcWMuHGM1F9wxaJE9H5uOJI=; b=dirJKnVUNrGajQkYUjSyMCHBq2BOF1DY2ZUgefzbbgfjDiGcei1WwDiayI2OCQRgnuv4TfqXVKjaNvpwZvdF4ygO+XeACSRlQY3D+olLfbYNheivsSArw1pf+U7KFmxxsZhz4hCnUvXVdkDfS/vp5RWb9S08XvY+tnangeY645bZyGRIilkJfwHfovoG41GSolzGK4EiHsnU56/BknDk1JHn1yOpWGICcGMMQYsAx6sD6agwPrdJMJzHWyiT8Zh6W/TWVj/X6Qdwv37Kv1dojgo/TIxzuav4WUJMq0fWPe61IRAPKOv8b4cAGC3VV0t7qEarOp8EJLnTmCo+YZ5w4Q== 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 MN6PR11MB8244.namprd11.prod.outlook.com (2603:10b6:208:470::14) by BL3PR11MB6529.namprd11.prod.outlook.com (2603:10b6:208:38c::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Wed, 7 Jun 2023 08:39:59 +0000 Received: from MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::892b:b8e6:bab7:635d]) by MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::892b:b8e6:bab7:635d%2]) with mapi id 15.20.6455.034; Wed, 7 Jun 2023 08:39:59 +0000 From: "Ni, Ray" To: "devel@edk2.groups.io" , "Ni, Ray" CC: "Dong, Eric" , "Kumar, Rahul R" , Gerd Hoffmann Subject: Re: [edk2-devel] [PATCH] UefiCpuPkg/SmmCpu: Add PcdSmmApPerfLogEnable control AP perf-logging Thread-Topic: [edk2-devel] [PATCH] UefiCpuPkg/SmmCpu: Add PcdSmmApPerfLogEnable control AP perf-logging Thread-Index: AQHZmRtcNbSucOG+Xkuw5Y8bWBDFva9/BN5g Date: Wed, 7 Jun 2023 08:39:59 +0000 Message-ID: References: <176653A0BFCB5CE7.27841@groups.io> In-Reply-To: <176653A0BFCB5CE7.27841@groups.io> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN6PR11MB8244:EE_|BL3PR11MB6529:EE_ x-ms-office365-filtering-correlation-id: bd704e50-5267-4182-14cf-08db6732c75d x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: CLON9M+tXWiplztuF8n4+k2SAHvc+wMrsJAmhcDVXovGzbrjgvmGMs5areF16WIkftl61TYsBIztzS6YVJvw7miBcbCv7wroIjoEPIY6TebYHd/KPzoGbz/bHePUpdLjNN6XFCYFBlh52WYIMDTE0fs74W088Rv/eIV6Ni1ozaXzXyZoLEKjPjpYj+uLVcxmRPP7M4cjyODaYuPBJUoG/nIg6Nx/J7Rwsaxygj9gB0bHwZqm+q4DLIZfYIKRy/mUDWSvtQfRMJIkK6cXwIm9kWoto7d7WStxeJCgA0HmcnL7t7JtNL59WxOQcRxvl3QNgVKIAhbk/rgZTw8syCi6TTHZ2ffnGu7mbbCBdOZqR8D/xDS60TgaxgYJ74+buGSVILyNyMSlVxnZQBoERFRUTlqE3PY7xD4Xcc1MBEjFWGhvSgLHcTFX77zjSm4d/wSPvTmH5vr6zdJd3g1d9WeS3uLboOZPxvtpA33Ab7Z5dgmk2ohnX2uuV1ocYPO0fv6jHXnwsKShN2zxwnA0zvycYVV/WXNl5mVYBYnQx6Zf+8dTjaPxy0mMkg+riBN6ISqC0eLXJ2k6S6C8h/PmdbEKmH52/Du5Haq8iUiFBG7m4cTlsgvKCWv13AToFxX6COjzD1+epi2Bet3t0tQUhCkvZQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN6PR11MB8244.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(6029001)(366004)(136003)(396003)(346002)(39860400002)(376002)(451199021)(7696005)(966005)(71200400001)(83380400001)(55016003)(86362001)(33656002)(38070700005)(26005)(122000001)(38100700002)(82960400001)(6506007)(9686003)(53546011)(186003)(8936002)(5660300002)(8676002)(41300700001)(316002)(52536014)(2906002)(110136005)(54906003)(66899021)(478600001)(66946007)(76116006)(66556008)(66476007)(64756008)(66446008)(4326008);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?xmsraUXwtMzi2rxCbKHusN+VTBYOUF7PojYwRioOysQfSOiMskg5IoXVPVj2?= =?us-ascii?Q?Rru5EKK/pD72CD2ZzfHRczsfqGrBbrueoemHRnU5D8dfqSbb2io9GLv09Y5S?= =?us-ascii?Q?1MdsW4pHZoVDHhvIUfRSM9PLDaBR8Sy+M1Ztqv0SiA59wmWt9E1IlJfnW4xi?= =?us-ascii?Q?n2Q0WvgI+EEkKwLoa/bgrMrFC+xu6d4nR9duX1pH0toUDhMe6gGi6zaZNwTq?= =?us-ascii?Q?KokWauPED2kZ0DrLEuis9kukKoG5+tIwKfwmxUVwQEuRMZFN2pzhW0kCd7hw?= =?us-ascii?Q?F5CY7eNhm2FG1cIhBezYCUG2wgdYAdhkEto0gZmmr7bMQ2y54UASDVr7RzUA?= =?us-ascii?Q?6nEMXxVND2fvSlP2vvcJzGTVV0OsAVEHFVxd7hq8zgJIv6XKLErxGZUCaH4q?= =?us-ascii?Q?3kXLXpB0Tnx6bivxW57jdSs8lkHpWlvBaAHoybHfrJwI2HpBmefY+QIjyjxj?= =?us-ascii?Q?j6Sv82ESpiLnI0uBUSxJuyAdnR4It+PPlNorJibZcvF5gSoNfTNC+dtcm+sM?= =?us-ascii?Q?pHhepiFDsdBmn73ExVWixFq5HS5dMF97TLrC8d7l003CGNWk1qu2EBc1YvKf?= =?us-ascii?Q?tu3myPn8uNqya7GyyHtZ2yO117B9TNb23NTCtoGiJ8l3Iy7khZuhCrvAGvKJ?= =?us-ascii?Q?/Dys681R17WfUlYykwxgoDAyN9VEWVmOSELUsP++yxZaQ6gnjvUpIce48MN7?= =?us-ascii?Q?g3WnQsD1VW5GyGJlt7Mcnrv3ZAuamDSGXPP5YDBvnLpkXt/hLaUN6Cbyuz1F?= =?us-ascii?Q?32dJM2WWeTgSx88gwmzzmzVC/nuu/2fVQP3QruKOjqGlV8O2C9DpmGsovVUA?= =?us-ascii?Q?Qoky6po/2LGD0sLPCbKeqr6ETVZWhyJcVjnTFa8Fkwh6C6vN0fHTZlQNlbiW?= =?us-ascii?Q?urlNMaX9SmqiMpeawKgOLx29oj8Wew8tvoLUzFq1t6FYZNlZHRtYGuOqvmkk?= =?us-ascii?Q?sgixXWxUSHcx1ybOvLcv0xWZTolvYfa0LqFi6RcSlhCz96IKstm2R96GMXjj?= =?us-ascii?Q?SGtxgB7dmzL3WRRce5WOOv5hbG85IqYhMQ/yznn0+GOfufvWzzQps6qN+yd7?= =?us-ascii?Q?Bg6R/XfHpAjv5pjKiUZj6YtpANgc+baS+PVT1hH/TGd8Bp3gGRFhh/dTI9HT?= =?us-ascii?Q?O9h1UDAdf3i+DJUqRwYy0PVHCNNkrLRJcmel2okGqNqNa8tto49X86zNNbXS?= =?us-ascii?Q?EaauIX7/hgE/FMPxeuJi/jaqubLz30RJNnXww6zgeE/OcqK1eYEw2jwVqqVW?= =?us-ascii?Q?V9fS3+/eD9lE1Ata0Xa7WKKzKdN6f0aIOcpzQB4HVmaAE5loAMATjjchBnKS?= =?us-ascii?Q?hFkHPvp9sBKQlvNbs+mLpPczjY1yC4wz7RxuhGcK0TcUL/Q0CVu9lMA9Rm4k?= =?us-ascii?Q?VfkiZmUFTewvjxMLgDio6+jyVsFqwdPhBUwnfZ/1x5iYvFliPXIbz5vWir7Z?= =?us-ascii?Q?mo1bUmOMpDzrLqcbtODGcv6Um5hWBBagxxl9JYQQTCwTRXEgoZY6DFGKykZR?= =?us-ascii?Q?k8s0Wi6V/3hJeiA78394tD8fCVix9WVlYENuSvmpxCQmxELcPzlAOFwOQfAd?= =?us-ascii?Q?dX2UMafU/886sOxwXh8=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN6PR11MB8244.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bd704e50-5267-4182-14cf-08db6732c75d X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jun 2023 08:39:59.3643 (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: g2sVv5zITS8EBWd0O4fpOmXCRvKIsDj7tsMy85RO3Pm7UdoBoaq5m8K3UAiQT42l7iklVAz805FyTosDzOTcvQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6529 Return-Path: ray.ni@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable This patch is based on patch series: https://edk2.groups.io/g/devel/message= /105492. I don't want to send a V3 for just including the additional patch. > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Ni, Ray > Sent: Wednesday, June 7, 2023 4:38 PM > To: devel@edk2.groups.io > Cc: Dong, Eric ; Kumar, Rahul R > ; Gerd Hoffmann > Subject: [edk2-devel] [PATCH] UefiCpuPkg/SmmCpu: Add > PcdSmmApPerfLogEnable control AP perf-logging >=20 > When a platform has lots of CPU cores/threads, perf-logging on every > AP produces lots of records. When this multiplies with number of SMIs > during post, the records are even more. >=20 > So, this patch adds a new PCD PcdSmmApPerfLogEnable (default TRUE) > to allow platform to turn off perf-logging on APs. >=20 > Cc: Eric Dong > Cc: Rahul Kumar > Cc: Gerd Hoffmann > --- > UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 2 +- > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 1 + > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.c | 11 ++++++++++- > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.h | 4 +++- > UefiCpuPkg/UefiCpuPkg.dec | 6 ++++++ > 5 files changed, 21 insertions(+), 3 deletions(-) >=20 > diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c > b/UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c > index bcd90f0671..8364b73242 100644 > --- a/UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c > +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c > @@ -784,7 +784,7 @@ BSPHandler ( > // Any SMM MP performance logging after this point will be migrated in= next > SMI. >=20 > // >=20 > PERF_CODE ( >=20 > - MigrateMpPerf (gSmmCpuPrivate->SmmCoreEntryContext.NumberOfCpus); >=20 > + MigrateMpPerf (gSmmCpuPrivate->SmmCoreEntryContext.NumberOfCpus, > CpuIndex); >=20 > ); >=20 >=20 >=20 > // >=20 > diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf > b/UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf > index 4864532c35..d864ae9101 100644 > --- a/UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf > +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf > @@ -128,6 +128,7 @@ > gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmProfileRingBuffer ## > CONSUMES >=20 > gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmFeatureControlMsrLock ## > CONSUMES >=20 > gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## > CONSUMES >=20 > + gUefiCpuPkgTokenSpaceGuid.PcdSmmApPerfLogEnable ## > CONSUMES >=20 >=20 >=20 > [Pcd] >=20 > gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber ## > SOMETIMES_CONSUMES >=20 > diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.c > b/UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.c > index c13556af46..92c67f31bf 100644 > --- a/UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.c > +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.c > @@ -39,16 +39,25 @@ InitializeMpPerf ( > Migrate MP performance data to standardized performance database. >=20 >=20 >=20 > @param NumberofCpus Number of processors in the platform. >=20 > + @param BspIndex The index of the BSP. >=20 > **/ >=20 > VOID >=20 > MigrateMpPerf ( >=20 > - UINTN NumberofCpus >=20 > + UINTN NumberofCpus, >=20 > + UINTN BspIndex >=20 > ) >=20 > { >=20 > UINTN CpuIndex; >=20 > UINTN MpProcecureId; >=20 >=20 >=20 > for (CpuIndex =3D 0; CpuIndex < NumberofCpus; CpuIndex++) { >=20 > + if ((CpuIndex !=3D BspIndex) && !FeaturePcdGet (PcdSmmApPerfLogEnabl= e)) { >=20 > + // >=20 > + // Skip migrating AP performance data if AP perf-logging is disabl= ed. >=20 > + // >=20 > + continue; >=20 > + } >=20 > + >=20 > for (MpProcecureId =3D 0; MpProcecureId < SMM_MP_PERF_PROCEDURE_ID > (SmmMpProcedureMax); MpProcecureId++) { >=20 > if (mSmmMpProcedurePerformance[CpuIndex].Begin[MpProcecureId] !=3D= 0) { >=20 > PERF_START (NULL, gSmmMpPerfProcedureName[MpProcecureId], NULL, > mSmmMpProcedurePerformance[CpuIndex].Begin[MpProcecureId]); >=20 > diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.h > b/UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.h > index b148a99e86..5ad1734cc8 100644 > --- a/UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.h > +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/SmmMpPerf.h > @@ -44,10 +44,12 @@ InitializeMpPerf ( > Migrate MP performance data to standardized performance database. >=20 >=20 >=20 > @param NumberofCpus Number of processors in the platform. >=20 > + @param BspIndex The index of the BSP. >=20 > **/ >=20 > VOID >=20 > MigrateMpPerf ( >=20 > - UINTN NumberofCpus >=20 > + UINTN NumberofCpus, >=20 > + UINTN BspIndex >=20 > ); >=20 >=20 >=20 > /** >=20 > diff --git a/UefiCpuPkg/UefiCpuPkg.dec b/UefiCpuPkg/UefiCpuPkg.dec > index d31c3b127c..5b0ac64e33 100644 > --- a/UefiCpuPkg/UefiCpuPkg.dec > +++ b/UefiCpuPkg/UefiCpuPkg.dec > @@ -175,6 +175,12 @@ > # @Prompt Support SmmFeatureControl. >=20 >=20 > gUefiCpuPkgTokenSpaceGuid.PcdSmmFeatureControlEnable|TRUE|BOOLEAN|0x > 32132110 >=20 >=20 >=20 > + ## Indicates if SMM perf logging in APs will be enabled.

>=20 > + # TRUE - SMM perf logging in APs will be enabled.
>=20 > + # FALSE - SMM perf logging in APs will not be enabled.
>=20 > + # @Prompt Enable SMM perf logging in APs. >=20 > + > gUefiCpuPkgTokenSpaceGuid.PcdSmmApPerfLogEnable|TRUE|BOOLEAN|0x321 > 32114 >=20 > + >=20 > [PcdsFixedAtBuild] >=20 > ## List of exception vectors which need switching stack. >=20 > # This PCD will only take into effect if PcdCpuStackGuard is enabled. >=20 > -- > 2.39.1.windows.1 >=20 >=20 >=20 > -=3D-=3D-=3D-=3D-=3D-=3D > Groups.io Links: You receive all messages sent to this group. > View/Reply Online (#105852): https://edk2.groups.io/g/devel/message/10585= 2 > Mute This Topic: https://groups.io/mt/99380509/1712937 > Group Owner: devel+owner@edk2.groups.io > Unsubscribe: > https://edk2.groups.io/g/devel/leave/3759105/1712937/893644498/xyzzy > [ray.ni@intel.com] > -=3D-=3D-=3D-=3D-=3D-=3D >=20