From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mx.groups.io with SMTP id smtpd.web11.52907.1656407961996543291 for ; Tue, 28 Jun 2022 02:19:22 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=fCAnaVeY; spf=pass (domain: intel.com, ip: 192.55.52.43, 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=1656407962; x=1687943962; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=6x3PeztapH7gjhNeIUJ7dcsynyua7amhjd9sMDhUqmk=; b=fCAnaVeY9U/ZmvoJ7GumJ76ak77lrnohDQdIh50PhJpKo8Pa3PifjhSe OoV2hu6im9UGROxO076OZfrYk3YpvxeIEaKPsy3VUOsayLJSRAmH9alE9 E19BuY5rw3l8CbPcBlEc+/IjxpTQShZDGiJz34TbLmjWpRV3cYwMg7EdH Ah4LL2pC+9CtY2n+d9KCadmTA1FJswP62aOCFlyNT0dfG9pUuwWKTIjec NdCaHoPSFnho7EWCdKjln6CJEckBerI+czyhdnZ+0fJYVlSLGxvV/NqJy XEg7FaTypdaCQHu1kG5YNWCzus1hgXf83d+msV7g29gJeYPk0Jw/u3fwS g==; X-IronPort-AV: E=McAfee;i="6400,9594,10391"; a="368001455" X-IronPort-AV: E=Sophos;i="5.92,227,1650956400"; d="scan'208";a="368001455" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Jun 2022 02:16:47 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,227,1650956400"; d="scan'208";a="717379849" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by orsmga004.jf.intel.com with ESMTP; 28 Jun 2022 02:16:47 -0700 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Tue, 28 Jun 2022 02:16:47 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27 via Frontend Transport; Tue, 28 Jun 2022 02:16:47 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.103) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Tue, 28 Jun 2022 02:16:46 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PChzjRYfjsTQbCUlL5aAjGs8DK9nvupaXzy1zlkncUs8eDqfm9aMS7ojSDx2WNdW2PhAk1in4HOp6xoPOSVxcFGBb01TK3JWDhb1OAxvhs43Uza059obEoPfIxxhzbhHeAzzBp8+kwQ3rq/fP4uW4gsD5qmQXXXL0U3Gsp51PUAm3gSW1yh5RCsqJ3o7p6xsM3Um4w3fKsUhvic/adcQoJXKaU+6C+oGb6cDdA6bHCWe35thISx6xXR0p5ajLIHKsyvPgJHI9pq3HQOgpz0amHZS9EmQFfJKoprDMyhxis5XGkJ6nzqXps8+l9VcavTWUCtiV4at0reYsnJW1OiXKQ== 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=fbx8kKQTEnvMz8vvvBi2EYbTo8RgO3kzE5fSdSdubOs=; b=RY6ZoqmHTNBEH+qx0iI9rH+7og4zsUAx/Y839cclc4VkLTzF5ZSZGOjqRdRN4llq3eEHNhhECaUO93NzUiJacGSEWtWipGwuSPOBd1SXN4wF9FByWIzpmpUdzEZHsZptRu0YHMPknXufhAwDNl1mlS3XYs8V5biMavMB5zmadHTvDq3K1yawIgxsSZ2mu+0aeyWBszZ3FW0/q019+UU93FhUWlfDLfvIEBuCCaG+ezpivaL9UTT3BW8NYK+7KndakY5dLe8TvdxaruPd2Ds1RwpoWqEhkEb7zhCfcCcm58TEsWmd1mTx3CnP7p5Op/Jw6Wvim6yaxcg3rI+9FV4pLw== 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 MWHPR11MB1631.namprd11.prod.outlook.com (2603:10b6:301:10::10) by PH0PR11MB5673.namprd11.prod.outlook.com (2603:10b6:510:d6::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.17; Tue, 28 Jun 2022 09:16:45 +0000 Received: from MWHPR11MB1631.namprd11.prod.outlook.com ([fe80::991b:97a0:7836:5174]) by MWHPR11MB1631.namprd11.prod.outlook.com ([fe80::991b:97a0:7836:5174%10]) with mapi id 15.20.5373.018; Tue, 28 Jun 2022 09:16:45 +0000 From: "Ni, Ray" To: "Wu, Jiaxin" , "devel@edk2.groups.io" CC: "Dong, Eric" Subject: Re: [PATCH v1] UefiCpuPkg: Add PCD to control SMRR enable & SmmFeatureControl support Thread-Topic: [PATCH v1] UefiCpuPkg: Add PCD to control SMRR enable & SmmFeatureControl support Thread-Index: AQHYisvC7VaW9YFWaEW8yAKSOrD0LK1kiOjA Date: Tue, 28 Jun 2022 09:16:45 +0000 Message-ID: References: <20220628084739.12216-1-jiaxin.wu@intel.com> In-Reply-To: <20220628084739.12216-1-jiaxin.wu@intel.com> 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-office365-filtering-correlation-id: cb4624a0-48a5-4183-2f46-08da58e6ebfd x-ms-traffictypediagnostic: PH0PR11MB5673:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: SMFK8hJbbrAUYoDTmTTtRENP+Hkj1Xx2E8gZ4Zu7je7xAonnuUX1dLgOlqlJKalZgCgHPLPGJPhZL5vecXTEBrAmVwhejERI/f+1/UOW7+lr2Ip6T5CU0nxcmJWnKdmrIe6DPSTGn5CLjKuhDUDFFi490IVKtc76RzP9E7Jo2Wxjl2A4pEocSGxUnZ0zfL/T+6AhZ9ItjTelf4BNY2lVbjXkHD98cj+5oe+1cGJNMSkpbduxjVDTF7GXd4gD8A2NWxxd3mw3aI9mVoHdk84nR2kKj2huRdVliupufMxs5rEujQLqNyEh2THErdT9im2181nS26tS+v3zh25twHxRAf9c+0mfKXMLClULKtMiS/fnd5C7bOdxA+GZ+9lulRgUEuNd9m1esRKahbkvvatO9h+8jiFezQnJKdqC697+OYZvxHKknZCVBHc3yfRTaUy/C2dS8XXPGUGFUBoMKbeCzLbvoYXsMHqo/bF1fHeiN9hvjmRNTJ9mG4XRlKZRa0jCff9Al2ATK1W1ZLAfCF5rGV3mJ/rhc/Cfde5cJtdfRd2LaWmniQS069zq/g40z3AAKfhyKnoBUIs3v2WFY3vXXRJRv5Gba9gRVxaL1BhXkSTJw96X6/xAOfopybjLGYHtCjwWhQx+iBkMpdcbHnlwvSBncCg9mAOZni+TDfug8dc4zLPZEv4cLil6UbNh6tmQfcvoBIraOs0FwZV8NTDtwWWtpx29FZ6KRH1U1j7Wtr1WO229VSQq3kriU01bJj7LwFWsXDFOdakHcFWDtPnada4DBkYIG7kMLiryEy5t/aI= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1631.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(376002)(39860400002)(396003)(346002)(366004)(136003)(38070700005)(6506007)(8936002)(38100700002)(76116006)(71200400001)(5660300002)(52536014)(110136005)(33656002)(316002)(478600001)(4326008)(66556008)(8676002)(86362001)(83380400001)(82960400001)(186003)(55016003)(7696005)(107886003)(2906002)(122000001)(64756008)(41300700001)(9686003)(66446008)(66946007)(26005)(66476007);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?E8nrxiKDfOCrei3krEOgyWd6wIc61tQmdiZxtXEafVxQUYPJHAxzCi1qzxDc?= =?us-ascii?Q?1n1wqjqYLtg0uuITplS2lFf8zpCU11qHhz4MO7fJMzoXy8PbZ8xOY6hXbfb9?= =?us-ascii?Q?i43yz3rS+KF1ufzwacetUym2DmLVitjlT398iY9jfFv6vwf76QpoKOvGjcro?= =?us-ascii?Q?QTqNzuPKTamzmuUAswLDPlO1mNLcNz4z7jqnyb2WmNzyh5Ft+IFRqEwtpoeA?= =?us-ascii?Q?gIisBhzsl2eIJ4cCnGubRK/z1NKr1lwA9yV2hPc5sE2h46Q6ogm3nvaBUzqH?= =?us-ascii?Q?Y+A38W1pZzjDAcq/yqIGCkzDMJy1S3UKgG4VDr5SnESLAvIa2Js6qPOS1T3X?= =?us-ascii?Q?L5Zp/OpC/WRtHnnuswyjfAC7oOdxwteWZsZ/0jPlagxlJ6Di5VrhbsxYHmyD?= =?us-ascii?Q?5aX8ZXINknJ/uooajErjmTahaBoD9XFzk34+4AI5IWb9PyK60brCho3mqAxn?= =?us-ascii?Q?rV9BCXwMJCBZhmDYnneYUd8mu2yfKHGIfw1nymVjLPm8H0gACY6N1g/krS1Y?= =?us-ascii?Q?UplW9S0bIo3lTJKPdyXjCJ+ONlw+Sp69dY7gKOLMbCSAEJW/iuBWd4ZknP+E?= =?us-ascii?Q?psZbmxClxZtvWAAiT+TwQQPfws9uMattEGn1apR575Cafn7txmYOJGfKDWpA?= =?us-ascii?Q?hrnwfMV69cRe8X1tTZxqgBQuxxKwqRUsWri+bWcewO+4H4mxGIqXydGXZLfL?= =?us-ascii?Q?yfNf+X67U/vRXKEHYkE8qGV5GcPK4hhldvov6FRdOHt+dI21m102G00XWPVD?= =?us-ascii?Q?ZzcbkuXJYWN5VHUs3YYS3BcNmP8S2iBZdhOczJdZDq5h/eAmgHogc6es3/fO?= =?us-ascii?Q?npxG82+A5LP7s4BPAYINYLa1m2oBMHH7fuwLK8pS4EWNwrj4N/LohuGoTA9K?= =?us-ascii?Q?TuvOnkEVJ/Lxe6632RFiJxhZ6myDS+6vtSGRxQYt4e7Nt09InVX2GtX0nG0z?= =?us-ascii?Q?J8oUzWdsKUu71Nv4Vxn+Dsxfv1eIpmQvBMlEWV6uzEIhldyBAo1xB/jqbp1q?= =?us-ascii?Q?IN2PGCgazfcXrOuUsaWjZYS3/WfWMrBovUpE4aoX2KO1em75IlfT2sshwk0a?= =?us-ascii?Q?w8UpTjS/TZ7I8tpEX4LSqyc3Xh2voaezclf45zz6ZC07It9YL55IShbFD3Uv?= =?us-ascii?Q?SS9ziytYDSvfViZrdQH0WBRjkVWOJSCIeDXFKWDYXhURRvlTSGOwymfZDJQd?= =?us-ascii?Q?v5sBKuagLxnLHVd5v6UYYxWFBWAsa0Fw2mIVuUHtD3h2orVReMlnBcWxbjuz?= =?us-ascii?Q?cQhzGOrhh2ej99B/dqj+E/7huG5oElQGOpYUHpUaI1KU/QPh1IaEcncDHNi8?= =?us-ascii?Q?WydZAgB7L+ubZEbeo5UI4fHiVp5FsK9/zuexCayJ8BqZJfH1+pKz7SA36WpA?= =?us-ascii?Q?Kr6NfyjsBZCYRVw8A4Vbmgz6Qnm3qGTbiLGbJ8SpJKVnc62WBfm0HYgtt2jO?= =?us-ascii?Q?f7S/BogmeNtfC5AWgodw+HhE8I7efpqoo5HQw2jC2nxzOqm6cED98aJDplqi?= =?us-ascii?Q?8I0NokzKdIf0GVgbsfoUR/bUYbZZ3+q4Y0/frtnhQKbc07MgK9kym3H7E9If?= =?us-ascii?Q?M+xc9I2VXzV9cIGewY4=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1631.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: cb4624a0-48a5-4183-2f46-08da58e6ebfd X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Jun 2022 09:16:45.0838 (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: IGD0wh+QGtWwjVm4P0iiIgLx7R713blQteJK9aR9DrcYp4uVu8yKHwCd0HBysJXkqsH2R06ZlY3w7Zntomx1YQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5673 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 > - // > - // Check CPUID(CPUID_VERSION_INFO).EDX[12] for MTRR capability > - // > - if ((RegEdx & BIT12) !=3D 0) { > - // > - // Check MTRR_CAP MSR bit 11 for SMRR support > - // > - if ((AsmReadMsr64 (SMM_FEATURES_LIB_IA32_MTRR_CAP) & BIT11) !=3D 0) > { > - mSmrrSupported =3D TRUE; 1. can we keep the logic but just replace the above line as "ASSERT (Featur= ePcdGet (PcdSmrrEnable));"? > if ((FeatureControl & BIT3) =3D=3D 0) { > - if ((FeatureControl & BIT0) =3D=3D 0) { > + if (((FeatureControl & BIT0) =3D=3D 0) && (FeaturePcdGet (PcdSmrrE= nable))) > { > AsmWriteMsr64 (SMM_FEATURES_LIB_IA32_FEATURE_CONTROL, > FeatureControl | BIT3); > } else { > - mSmrrSupported =3D FALSE; > + ASSERT (!FeaturePcdGet (PcdSmrrEnable)); 2. If PcdSmrrEnable is TRUE but the FeatureControl MSR is locked (BIT0 is s= et), above assertion will be hit. We may need to reconsider the code logic. > - { > - // > - // Check to see if the CPU supports the SMM Code Access Check feat= ure > - // Do not access this MSR unless the CPU supports the > SmmRegFeatureControl > - // > - if ((AsmReadMsr64 (SMM_FEATURES_LIB_IA32_MCA_CAP) & > SMM_CODE_ACCESS_CHK_BIT) !=3D 0) { > - mSmmFeatureControlSupported =3D TRUE; 3. can we keep the logic but just replace the above line as "ASSERT (Featur= ePcdGet (PcdSmmFeatureControlEnable))"?