From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (NAM12-BN8-obe.outbound.protection.outlook.com [40.92.21.30]) by mx.groups.io with SMTP id smtpd.web10.7689.1614917344756286302 for ; Thu, 04 Mar 2021 20:09:05 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@outlook.com header.s=selector1 header.b=oElXcREX; spf=pass (domain: outlook.com, ip: 40.92.21.30, mailfrom: kun.q@outlook.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N3RIvBD96J0g/aaUfud4i9Y1ybB0xagdj3/LDX/YvHixn+xGLz9mSFLhHKuNosaZ4FhPnGzV214L2mMBrd7Oc4/sYaBKBrKGprpoM5WS/CVemr0osUfr1sw300v9uMVwuDKzx5Skm0PmbHDkvw57ROiCOcOz2RlyN6oKnA4ajAzUNYSNKugBEXE1fF0Rb0duIC2585g7MeXw/3mMQmxnJ9U+qiq+xqrVfJo62IAPoJz1+OZWLTQq123Fr7J+v8mX0ZEvC37MeqPWqHgLCXnRAI2W3zct3kPxrj1oxtb1h8HZpUDHU7qOLlFfHQs/TcthzGTfoQB4PlDlNspAfOKcTg== 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=yELQT/4E+7erK0tqKe9Vvw2UsfqylgmwtU6gwmUIY3M=; b=d3u5Ku87Bqs+GDzMENuKUZcBim0lIAHeFp0Ovn9C0ma53U38TXxDG+iU88D2Nve8weEbvTuTjp2uLish9YIchs+IzR6CC7JH/oUSpmf9VwvzG5wnZ8U7mNzI15R7RHIP2xN8DGr5KY9HG+Ls0h2OI0inbmBBDJWz75JpGRX6rxVTV0R6/ChIUo/K8SiymQGKqplNRM6IoR8faSCmhkf3H2v0EbV8VUkzMPYoKqOIAoWxPZbkJLQy71zHzKOhCxksEdwMh5SdORrQHDgW1QgtXAAmUPVmzUE0cttKBu+uBswO8ZhZ7qzI0VZ1zk38gW8WuvCZ7tALJz2xrRQwlUTkJA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yELQT/4E+7erK0tqKe9Vvw2UsfqylgmwtU6gwmUIY3M=; b=oElXcREXW200brG0x0Kzp/zTVRfhr9LUiqQM5V/kMUmpw7L2mpxrSBaZbQM3oEtI3SEpI4e0JxFZUfG2ua1eFA9fFPK6fLt0ikBaaGe3Napm1yWwqMsGlliuj5EDwPqtucN184VXrNhyPO7wVrQrBK3slVLh83iyaSWD+07e4cem+aQ5GybKWxoLX9JmDGFi/Kk4nLHTicssGpgjl/KCAl0XYJekg1UZfnCMRe2y5iaFLb4/MTlOAGx+uRQ3O3ITYbPDs2RUbbMoUiE0ek8t9P+0i5sUK5/mu7LTKMGbr1+LkxvpmcjdQWWO3AThjknPIWgRz4l3EIskUr5KtxZW5w== Received: from DM6NAM12FT067.eop-nam12.prod.protection.outlook.com (2a01:111:e400:fc64::52) by DM6NAM12HT169.eop-nam12.prod.protection.outlook.com (2a01:111:e400:fc64::312) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3912.9; Fri, 5 Mar 2021 04:09:03 +0000 Received: from MWHPR06MB3102.namprd06.prod.outlook.com (2a01:111:e400:fc64::40) by DM6NAM12FT067.mail.protection.outlook.com (2a01:111:e400:fc64::397) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3912.9 via Frontend Transport; Fri, 5 Mar 2021 04:09:03 +0000 Received: from MWHPR06MB3102.namprd06.prod.outlook.com ([fe80::d4ee:1260:6f53:3f7b]) by MWHPR06MB3102.namprd06.prod.outlook.com ([fe80::d4ee:1260:6f53:3f7b%7]) with mapi id 15.20.3890.028; Fri, 5 Mar 2021 04:09:03 +0000 From: "Kun Qin" To: "devel@edk2.groups.io" , "gaoliming@byosoft.com.cn" , 'Michael D Kinney' , 'Zhiguang Liu' CC: 'Hao A Wu' , 'Jiewen Yao' , 'Laszlo Ersek' Subject: Re: [edk2-devel] [PATCH v5 1/7] MdePkg: MmUnblockMemoryLib: Added definition and null instance Thread-Topic: [edk2-devel] [PATCH v5 1/7] MdePkg: MmUnblockMemoryLib: Added definition and null instance Thread-Index: AQHXEShe1TScOaJxikCweeb8j/8SGqp0iBUvgAAxGgCAAA7h8g== Date: Fri, 5 Mar 2021 04:09:03 +0000 Message-ID: References: <20210304185814.1652-1-kun.q@outlook.com>, ,<007c01d7116d$c056a410$4103ec30$@byosoft.com.cn> In-Reply-To: <007c01d7116d$c056a410$4103ec30$@byosoft.com.cn> Accept-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-incomingtopheadermarker: OriginalChecksum:5A36A1FDBDC11385FFE1D8CBF0ED0E7D9CCF27C25D96DCCA2F950C0F89D8C8DD;UpperCasedChecksum:31D2A2F6BF07384EF89895A8273B8CD6F6E369532E40D6A4257BD9EED60180A1;SizeAsReceived:7327;Count:44 x-tmn: [h0cFwq3U46u6w6vGQw7lBt2n1LZ3zzJG] x-ms-publictraffictype: Email x-incomingheadercount: 44 x-eopattributedmessage: 0 x-ms-office365-filtering-correlation-id: d4d2900a-ee22-4c24-f369-08d8df8c6976 x-ms-traffictypediagnostic: DM6NAM12HT169: x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: stI99O1p+9ORKpCIibHHGI5JcJtKwCeFmzrVy6lhgHsu9Hqax5PnkzG/uEdNabRDrT/XyGAVRDkHSds91kPsFOH8k+IRu2Gme679D118aZyVFKRfZY8dic62XmnNziyub9HefIeEC7SBZSr7fPuBqZJYWTVOhqptEytmR5Kxv9/6hG9bZDIi9n265FF5FlgnPeDW4dJY/af/WaG/Kz3jhssLfCGHjdAZytTysrje3jhvZF+Wb7j/TfySJPTQWovPnwH4qJwdzVn0/pN/zw8yOYbXF+lcy+h5jlqkbu+S/BUPqR4Uvm2YP0mp3q/xDCRDEjRHDw4ZSOvE3s80LlcsRYyNaiIfLVJegAfEvB8KutiXpMPwz+1QNdKNT+zxdHFr7blsGIcucch8O70QrDiU52pwYOTof5vCyfLkcmiZk8IKSLroFYXJvlMXxEsv8mFK x-ms-exchange-antispam-messagedata: zWegVRTZYdEBLDDG7yiszO21bqeY/lXaxABxT7hbYyseeh55MNfYHFWraf2W3Z+d4h8w++fvPqWI3Qeb3qw81ICIBbyJ02PZUjWsVvtgiIwxfYAxPZBCgHAyINt4nUkTxSM84/G2SwX1pmWIRVP+cw== x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-AuthSource: DM6NAM12FT067.eop-nam12.prod.protection.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: d4d2900a-ee22-4c24-f369-08d8df8c6976 X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Mar 2021 04:09:03.0314 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Internet X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6NAM12HT169 X-Groupsio-MsgNum: 72469 Content-Language: en-US Content-Type: multipart/related; boundary="_004_MWHPR06MB310200B42037F82B6C7BFB8FF3969MWHPR06MB3102namp_"; type="multipart/alternative" --_004_MWHPR06MB310200B42037F82B6C7BFB8FF3969MWHPR06MB3102namp_ Content-Type: multipart/alternative; boundary="_000_MWHPR06MB310200B42037F82B6C7BFB8FF3969MWHPR06MB3102namp_" --_000_MWHPR06MB310200B42037F82B6C7BFB8FF3969MWHPR06MB3102namp_ Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 VGhhbmtzLCBMaW1pbmcuIEkgd2lsbCBzZW5kIHRoZSB1cGRhdGVkIHBhdGNoZXMgc2hvcnRseS4N Cg0KUmVnYXJkcywNCkt1bg0KDQpGcm9tOiBnYW9saW1pbmc8bWFpbHRvOmdhb2xpbWluZ0BieW9z b2Z0LmNvbS5jbj4NClNlbnQ6IFRodXJzZGF5LCBNYXJjaCA0LCAyMDIxIDE5OjE1DQpUbzogZGV2 ZWxAZWRrMi5ncm91cHMuaW88bWFpbHRvOmRldmVsQGVkazIuZ3JvdXBzLmlvPjsga3VuLnFAb3V0 bG9vay5jb208bWFpbHRvOmt1bi5xQG91dGxvb2suY29tPjsgJ01pY2hhZWwgRCBLaW5uZXknPG1h aWx0bzptaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47ICdaaGlndWFuZyBMaXUnPG1haWx0bzp6 aGlndWFuZy5saXVAaW50ZWwuY29tPg0KQ2M6ICdIYW8gQSBXdSc8bWFpbHRvOmhhby5hLnd1QGlu dGVsLmNvbT47ICdKaWV3ZW4gWWFvJzxtYWlsdG86amlld2VuLnlhb0BpbnRlbC5jb20+OyAnTGFz emxvIEVyc2VrJzxtYWlsdG86bGVyc2VrQHJlZGhhdC5jb20+DQpTdWJqZWN0OiC72Li0OiBbZWRr Mi1kZXZlbF0gW1BBVENIIHY1IDEvN10gTWRlUGtnOiBNbVVuYmxvY2tNZW1vcnlMaWI6IEFkZGVk IGRlZmluaXRpb24gYW5kIG51bGwgaW5zdGFuY2UNCg0KS3VuOg0KIEkgaGF2ZSBvbmUgbWlub3Ig Y29tbWVudC4gUGxlYXNlIHNlZSBpdC4NCg0KVGhhbmtzDQpMaW1pbmcNCreivP7IyzogZGV2ZWxA ZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiC0+rHtIEt1biBRaW4NCreiy83K sbzkOiAyMDIxxOoz1MI1yNUgODoyMw0KytW8/sjLOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTWlj aGFlbCBEIEtpbm5leSA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBnYW9saW1pbmcgPGdh b2xpbWluZ0BieW9zb2Z0LmNvbS5jbj47IFpoaWd1YW5nIExpdSA8emhpZ3VhbmcubGl1QGludGVs LmNvbT4NCrOty806IEhhbyBBIFd1IDxoYW8uYS53dUBpbnRlbC5jb20+OyBKaWV3ZW4gWWFvIDxq aWV3ZW4ueWFvQGludGVsLmNvbT47IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+DQrW 98ziOiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCB2NSAxLzddIE1kZVBrZzogTW1VbmJsb2NrTWVt b3J5TGliOiBBZGRlZCBkZWZpbml0aW9uIGFuZCBudWxsIGluc3RhbmNlDQoNCkhpIE1pa2UvTGlt aW5nL1poaWd1YW5nLA0KDQpDb3VsZCB5b3UgcGxlYXNlIHJldmlldyB0aGlzIHBhdGNoIGFuZCBs ZXQgbWUga25vdyBpZiB5b3UgaGF2ZSBhbnkgZmVlZGJhY2sgb24gdGhpcyBwYXRjaD8gQW55IGlu cHV0IGlzIGFwcHJlY2lhdGVkLg0KDQpSZWdhcmRzLA0KS3VuDQoNCkZyb206IEt1biBRaW48bWFp bHRvOmt1bi5xQG91dGxvb2suY29tPg0KU2VudDogVGh1cnNkYXksIE1hcmNoIDQsIDIwMjEgMTA6 NTgNClRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzxtYWlsdG86ZGV2ZWxAZWRrMi5ncm91cHMuaW8+ DQpDYzogTWljaGFlbCBEIEtpbm5leTxtYWlsdG86bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+ OyBMaW1pbmcgR2FvPG1haWx0bzpnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBaaGlndWFuZyBM aXU8bWFpbHRvOnpoaWd1YW5nLmxpdUBpbnRlbC5jb20+OyBIYW8gQSBXdTxtYWlsdG86aGFvLmEu d3VAaW50ZWwuY29tPjsgSmlld2VuIFlhbzxtYWlsdG86amlld2VuLnlhb0BpbnRlbC5jb20+OyBM YXN6bG8gRXJzZWs8bWFpbHRvOmxlcnNla0ByZWRoYXQuY29tPg0KU3ViamVjdDogW1BBVENIIHY1 IDEvN10gTWRlUGtnOiBNbVVuYmxvY2tNZW1vcnlMaWI6IEFkZGVkIGRlZmluaXRpb24gYW5kIG51 bGwgaW5zdGFuY2UNCg0KUkVGOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19i dWcuY2dpP2lkPTMxNjgNCg0KVGhpcyBpbnRlcmZhY2UgcHJvdmlkZXMgYW4gYWJzdHJhdGlvbiBs YXllciB0byBhbGxvdyBNTSBtb2R1bGVzIHRvIGFjY2Vzcw0KcmVxdWVzdGVkIGFyZWFzIHRoYXQg YXJlIG91dHNpZGUgb2YgTU1SQU0uIE9uIE1NIG1vZGVsIHRoYXQgYmxvY2tzIGFsbA0Kbm9uLU1N UkFNIGFjY2Vzc2VzLCBhcmVhcyByZXF1ZXN0ZWQgdGhyb3VnaCB0aGlzIEFQSSB3aWxsIGJlIG1h cHBlZCBvcg0KdW5ibG9ja2VkIGZvciBhY2Nlc3NpYmlsaXR5IGluc2lkZSBNTSBlbnZpcm9ubWVu dC4NCg0KRm9yIE1NIG1vZHVsZXMgdGhhdCBuZWVkIHRvIGFjY2VzcyByZWdpb25zIG91dHNpZGUg b2YgTU1SQU1zLCB0aGUgYWdlbnRzDQp0aGF0IHNldCB1cCB0aGVzZSByZWdpb25zIGFyZSByZXNw b25zaWJsZSBmb3IgaW52b2tpbmcgdGhpcyBBUEkgaW4gb3JkZXINCmZvciB0aGVzZSBtZW1vcnkg YXJlYXMgdG8gYmUgYWNjZXNzaWJsZSBmcm9tIGluc2lkZSBNTS4NCg0KRXhhbXBsZSB1c2FnZXM6 DQoxLiBUbyBlbmFibGUgcnVudGltZSBjYWNoZSBmZWF0dXJlIGZvciB2YXJpYWJsZSBzZXJ2aWNl LCBWYXJpYWJsZSBNTQ0KbW9kdWxlIHdpbGwgbmVlZCB0byBhY2Nlc3MgdGhlIGFsbG9jYXRlZCBy dW50aW1lIGJ1ZmZlci4gVGh1cyB0aGUgYWdlbnQNCnNldHMgdXAgdGhlc2UgYnVmZmVycywgVmFy aWFibGVTbW1SdW50aW1lRHhlLCB3aWxsIG5lZWQgdG8gaW52b2tlIHRoaXMNCkFQSSB0byBtYWtl IHRoZXNlIHJlZ2lvbnMgYWNjZXNzaWJsZSBieSBWYXJpYWJsZSBNTS4NCjIuIEZvciBUUE0gQUNQ SSB0YWJsZSB0byBjb21tdW5pY2F0ZSB0byBwaHlzaWNhbCBwcmVzZW5jZSBoYW5kbGVyLCB0aGUN CmNvcnJlc3BvbmRpbmcgTlZTIHJlZ2lvbiBoYXMgdG8gYmUgYWNjZXNzaWJsZSBmcm9tIGluc2lk ZSBNTS4gT25jZSB0aGUNCk5WUyByZWdpb24gYXJlIGFzc2lnbmVkLCBpdCBuZWVkcyB0byBiZSB1 bmJsb2NrZWQgdGhvdXJnaCB0aGlzIEFQSS4NCg0KQ2M6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hh ZWwuZC5raW5uZXlAaW50ZWwuY29tPG1haWx0bzptaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4+ DQpDYzogTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPG1haWx0bzpnYW9saW1p bmdAYnlvc29mdC5jb20uY24+Pg0KQ2M6IFpoaWd1YW5nIExpdSA8emhpZ3VhbmcubGl1QGludGVs LmNvbTxtYWlsdG86emhpZ3VhbmcubGl1QGludGVsLmNvbT4+DQpDYzogSGFvIEEgV3UgPGhhby5h Lnd1QGludGVsLmNvbTxtYWlsdG86aGFvLmEud3VAaW50ZWwuY29tPj4NCkNjOiBKaWV3ZW4gWWFv IDxqaWV3ZW4ueWFvQGludGVsLmNvbTxtYWlsdG86amlld2VuLnlhb0BpbnRlbC5jb20+Pg0KQ2M6 IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb208bWFpbHRvOmxlcnNla0ByZWRoYXQuY29t Pj4NCg0KU2lnbmVkLW9mZi1ieTogS3VuIFFpbiA8a3VuLnFAb3V0bG9vay5jb208bWFpbHRvOmt1 bi5xQG91dGxvb2suY29tPj4NCi0tLQ0KDQpOb3RlczoNCiAgICB2NToNCiAgICAtIERvd25ncmFk ZWQgZGF0YSB0eXBlcyBmcm9tIEVGSV8qIHRvIFJFVFVSTl8qLiBbTGFzemxvXQ0KDQogICAgdjQ6 DQogICAgLSBBZGRlZCBtb3JlIGNvbW1pdCBtZXNzYWdlIFtMYXN6bG9dDQogICAgLSBBZGRlZCBV TkkgZmlsZSBbSGFvXQ0KDQogICAgdjM6DQogICAgLSBNb3ZlIGludGVyZmFjZSB0byBNZGVQa2cg W0hhbywgTGltaW5nLCBKaWV3ZW5dDQogICAgLSBSZW1vdmUgRHhlIHByZWZpeCBbSmlld2VuXQ0K DQogICAgdjI6DQogICAgLSBSZXNlbmQgd2l0aCBwcmFjdGljYWwgdXNhZ2UuIE5vIGNoYW5nZSBb SGFvXQ0KDQogTWRlUGtnL0xpYnJhcnkvTW1VbmJsb2NrTWVtb3J5TGliL01tVW5ibG9ja01lbW9y eUxpYk51bGwuYyAgIHwgNDQgKysrKysrKysrKysrKysrKysrKysNCiBNZGVQa2cvSW5jbHVkZS9M aWJyYXJ5L01tVW5ibG9ja01lbW9yeUxpYi5oICAgICAgICAgICAgICAgICAgfCA0NCArKysrKysr KysrKysrKysrKysrKw0KIE1kZVBrZy9MaWJyYXJ5L01tVW5ibG9ja01lbW9yeUxpYi9NbVVuYmxv Y2tNZW1vcnlMaWJOdWxsLmluZiB8IDM0ICsrKysrKysrKysrKysrKw0KIE1kZVBrZy9MaWJyYXJ5 L01tVW5ibG9ja01lbW9yeUxpYi9NbVVuYmxvY2tNZW1vcnlMaWJOdWxsLnVuaSB8IDIxICsrKysr KysrKysNCiBNZGVQa2cvTWRlUGtnLmRlYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgNSArKysNCiBNZGVQa2cvTWRlUGtnLmRzYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMSArDQogNiBmaWxlcyBjaGFuZ2VkLCAxNDkg aW5zZXJ0aW9ucygrKQ0KDQpkaWZmIC0tZ2l0IGEvTWRlUGtnL0xpYnJhcnkvTW1VbmJsb2NrTWVt b3J5TGliL01tVW5ibG9ja01lbW9yeUxpYk51bGwuYyBiL01kZVBrZy9MaWJyYXJ5L01tVW5ibG9j a01lbW9yeUxpYi9NbVVuYmxvY2tNZW1vcnlMaWJOdWxsLmMNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQppbmRleCAwMDAwMDAwMDAwMDAuLmIyMDVjOTEyMmRmOA0KLS0tIC9kZXYvbnVsbA0KKysrIGIv TWRlUGtnL0xpYnJhcnkvTW1VbmJsb2NrTWVtb3J5TGliL01tVW5ibG9ja01lbW9yeUxpYk51bGwu Yw0KQEAgLTAsMCArMSw0NCBAQA0KKy8qKiBAZmlsZQ0KKyAgTnVsbCBpbnN0YW5jZSBvZiBNTSBV bmJsb2NrIFBhZ2UgTGlicmFyeS4NCisNCisgIFRoaXMgbGlicmFyeSBwcm92aWRlcyBhbiBpbnRl cmZhY2UgdG8gcmVxdWVzdCBub24tTU1SQU0gcGFnZXMgdG8gYmUgbWFwcGVkL3VuYmxvY2tlZA0K KyAgZnJvbSBpbnNpZGUgTU0gZW52aXJvbm1lbnQuDQorDQorICBGb3IgTU0gbW9kdWxlcyB0aGF0 IG5lZWQgdG8gYWNjZXNzIHJlZ2lvbnMgb3V0c2lkZSBvZiBNTVJBTXMsIHRoZSBhZ2VudHMgdGhh dCBzZXQgdXANCisgIHRoZXNlIHJlZ2lvbnMgYXJlIHJlc3BvbnNpYmxlIGZvciBpbnZva2luZyB0 aGlzIEFQSSBpbiBvcmRlciBmb3IgdGhlc2UgbWVtb3J5IGFyZWFzDQorICB0byBiZSBhY2Nlc3Nl ZCBmcm9tIGluc2lkZSBNTS4NCisNCisgIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0 aW9uLg0KKyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCisN CisqKi8NCisNCisjaW5jbHVkZSA8QmFzZS5oPg0KKw0KKy8qKg0KKyAgVGhpcyBBUEkgcHJvdmlk ZXMgYSB3YXkgdG8gdW5ibG9jayBjZXJ0YWluIGRhdGEgcGFnZXMgdG8gYmUgYWNjZXNzaWJsZSBp bnNpZGUgTU0gZW52aXJvbm1lbnQuDQorDQorICBAcGFyYW0gIFVuYmxvY2tBZGRyZXNzICAgICAg ICAgICAgICBUaGUgYWRkcmVzcyBvZiBidWZmZXIgY2FsbGVyIHJlcXVlc3RzIHRvIHVuYmxvY2ss IHRoZSBhZGRyZXNzDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXMg dG8gYmUgcGFnZSBhbGlnbmVkLg0KKyAgQHBhcmFtICBOdW1iZXJPZlBhZ2VzICAgICAgICAgICAg ICAgVGhlIG51bWJlciBvZiBwYWdlcyByZXF1ZXN0ZWQgdG8gYmUgdW5ibG9ja2VkIGZyb20gTU0N CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudmlyb25tZW50Lg0KKw0K KyAgQHJldHZhbCBSRVRVUk5fU1VDQ0VTUyAgICAgICAgICAgICAgVGhlIHJlcXVlc3QgZ29lcyB0 aHJvdWdoIHN1Y2Nlc3NmdWxseS4NCisgIEByZXR2YWwgUkVUVVJOX05PVF9BVkFJTEFCTEVfWUVU ICAgIFRoZSByZXF1ZXN0ZWQgZnVuY3Rpb25hbGl0eSBpcyBub3QgcHJvZHVjZWQgeWV0Lg0KKyAg QHJldHZhbCBSRVRVUk5fVU5TVVBQT1JURUQgICAgICAgICAgVGhlIHJlcXVlc3RlZCBmdW5jdGlv bmFsaXR5IGlzIG5vdCBzdXBwb3J0ZWQgb24gY3VycmVudCBwbGF0Zm9ybS4NCisgIEByZXR2YWwg UkVUVVJOX1NFQ1VSSVRZX1ZJT0xBVElPTiAgIFRoZSByZXF1ZXN0ZWQgYWRkcmVzcyBmYWlsZWQg dG8gcGFzcyBzZWN1cml0eSBjaGVjayBmb3INCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVuYmxvY2tpbmcuDQorICBAcmV0dmFsIFJFVFVSTl9JTlZBTElEX1BBUkFNRVRF UiAgICBJbnB1dCBhZGRyZXNzIGVpdGhlciBOVUxMIHBvaW50ZXIgb3Igbm90IHBhZ2UgYWxpZ25l ZC4NCisgIEByZXR2YWwgUkVUVVJOX0FDQ0VTU19ERU5JRUQgICAgICAgIFRoZSByZXF1ZXN0IGlz IHJlamVjdGVkIGR1ZSB0byBzeXN0ZW0gaGFzIHBhc3NlZCBjZXJ0YWluIGJvb3QNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlLg0KKw0KKyoqLw0KK1JFVFVSTl9T VEFUVVMNCitFRklBUEkNCitNbVVuYmxvY2tNZW1vcnlSZXF1ZXN0ICgNCisgIElOIFBIWVNJQ0FM X0FERFJFU1MgICAgICAgVW5ibG9ja0FkZHJlc3MsDQorICBJTiBVSU5UNjQgICAgICAgICAgICAg ICAgIE51bWJlck9mUGFnZXMNCisgICkNCit7DQorICByZXR1cm4gUkVUVVJOX1VOU1VQUE9SVEVE Ow0KK30NCmRpZmYgLS1naXQgYS9NZGVQa2cvSW5jbHVkZS9MaWJyYXJ5L01tVW5ibG9ja01lbW9y eUxpYi5oIGIvTWRlUGtnL0luY2x1ZGUvTGlicmFyeS9NbVVuYmxvY2tNZW1vcnlMaWIuaA0KbmV3 IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAwMC4uMDBmYWI1MzBhM2JjDQotLS0g L2Rldi9udWxsDQorKysgYi9NZGVQa2cvSW5jbHVkZS9MaWJyYXJ5L01tVW5ibG9ja01lbW9yeUxp Yi5oDQpAQCAtMCwwICsxLDQ0IEBADQorLyoqIEBmaWxlDQorICBNTSBVbmJsb2NrIE1lbW9yeSBM aWJyYXJ5IEludGVyZmFjZS4NCisNCisgIFRoaXMgbGlicmFyeSBwcm92aWRlcyBhbiBpbnRlcmZh Y2UgdG8gcmVxdWVzdCBub24tTU1SQU0gcGFnZXMgdG8gYmUgbWFwcGVkL3VuYmxvY2tlZA0KKyAg ZnJvbSBpbnNpZGUgTU0gZW52aXJvbm1lbnQuDQorDQorICBGb3IgTU0gbW9kdWxlcyB0aGF0IG5l ZWQgdG8gYWNjZXNzIHJlZ2lvbnMgb3V0c2lkZSBvZiBNTVJBTXMsIHRoZSBhZ2VudHMgdGhhdCBz ZXQgdXANCisgIHRoZXNlIHJlZ2lvbnMgYXJlIHJlc3BvbnNpYmxlIGZvciBpbnZva2luZyB0aGlz IEFQSSBpbiBvcmRlciBmb3IgdGhlc2UgbWVtb3J5IGFyZWFzDQorICB0byBiZSBhY2Nlc3NlZCBm cm9tIGluc2lkZSBNTS4NCisNCisgIENvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9u Lg0KKyAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCisNCisq Ki8NCisNCisjaWZuZGVmIE1NX1VOQkxPQ0tfTUVNT1JZX0xJQl9IXw0KKyNkZWZpbmUgTU1fVU5C TE9DS19NRU1PUllfTElCX0hfDQorDQorLyoqDQorICBUaGlzIEFQSSBwcm92aWRlcyBhIHdheSB0 byB1bmJsb2NrIGNlcnRhaW4gZGF0YSBwYWdlcyB0byBiZSBhY2Nlc3NpYmxlIGluc2lkZSBNTSBl bnZpcm9ubWVudC4NCisNCisgIEBwYXJhbSAgVW5ibG9ja0FkZHJlc3MgICAgICAgICAgICAgIFRo ZSBhZGRyZXNzIG9mIGJ1ZmZlciBjYWxsZXIgcmVxdWVzdHMgdG8gdW5ibG9jaywgdGhlIGFkZHJl c3MNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhcyB0byBiZSBwYWdl IGFsaWduZWQuDQorICBAcGFyYW0gIE51bWJlck9mUGFnZXMgICAgICAgICAgICAgICBUaGUgbnVt YmVyIG9mIHBhZ2VzIHJlcXVlc3RlZCB0byBiZSB1bmJsb2NrZWQgZnJvbSBNTQ0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW52aXJvbm1lbnQuDQorDQorICBAcmV0dmFs IFJFVFVSTl9TVUNDRVNTICAgICAgICAgICAgICBUaGUgcmVxdWVzdCBnb2VzIHRocm91Z2ggc3Vj Y2Vzc2Z1bGx5Lg0KKyAgQHJldHZhbCBSRVRVUk5fTk9UX0FWQUlMQUJMRV9ZRVQgICAgVGhlIHJl cXVlc3RlZCBmdW5jdGlvbmFsaXR5IGlzIG5vdCBwcm9kdWNlZCB5ZXQuDQorICBAcmV0dmFsIFJF VFVSTl9VTlNVUFBPUlRFRCAgICAgICAgICBUaGUgcmVxdWVzdGVkIGZ1bmN0aW9uYWxpdHkgaXMg bm90IHN1cHBvcnRlZCBvbiBjdXJyZW50IHBsYXRmb3JtLg0KKyAgQHJldHZhbCBSRVRVUk5fU0VD VVJJVFlfVklPTEFUSU9OICAgVGhlIHJlcXVlc3RlZCBhZGRyZXNzIGZhaWxlZCB0byBwYXNzIHNl Y3VyaXR5IGNoZWNrIGZvcg0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dW5ibG9ja2luZy4NCisgIEByZXR2YWwgUkVUVVJOX0lOVkFMSURfUEFSQU1FVEVSICAgIElucHV0 IGFkZHJlc3MgZWl0aGVyIE5VTEwgcG9pbnRlciBvciBub3QgcGFnZSBhbGlnbmVkLg0KKyAgQHJl dHZhbCBSRVRVUk5fQUNDRVNTX0RFTklFRCAgICAgICAgVGhlIHJlcXVlc3QgaXMgcmVqZWN0ZWQg ZHVlIHRvIHN5c3RlbSBoYXMgcGFzc2VkIGNlcnRhaW4gYm9vdA0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcGhhc2UuDQorDQorKiovDQorUkVUVVJOX1NUQVRVUw0KK0VG SUFQSQ0KK01tVW5ibG9ja01lbW9yeVJlcXVlc3QgKA0KKyAgSU4gUEhZU0lDQUxfQUREUkVTUyAg ICAgICBVbmJsb2NrQWRkcmVzcywNCisgIElOIFVJTlQ2NCAgICAgICAgICAgICAgICAgTnVtYmVy T2ZQYWdlcw0KKyk7DQorDQorI2VuZGlmIC8vIE1NX1VOQkxPQ0tfTUVNT1JZX0xJQl9IXw0KZGlm ZiAtLWdpdCBhL01kZVBrZy9MaWJyYXJ5L01tVW5ibG9ja01lbW9yeUxpYi9NbVVuYmxvY2tNZW1v cnlMaWJOdWxsLmluZiBiL01kZVBrZy9MaWJyYXJ5L01tVW5ibG9ja01lbW9yeUxpYi9NbVVuYmxv Y2tNZW1vcnlMaWJOdWxsLmluZg0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAw MDAwMC4uOGVjYjc2N2ZmN2JkDQotLS0gL2Rldi9udWxsDQorKysgYi9NZGVQa2cvTGlicmFyeS9N bVVuYmxvY2tNZW1vcnlMaWIvTW1VbmJsb2NrTWVtb3J5TGliTnVsbC5pbmYNCkBAIC0wLDAgKzEs MzQgQEANCisjIyBAZmlsZQ0KKyMgIE51bGwgaW5zdGFuY2Ugb2YgTU0gVW5ibG9jayBQYWdlIExp YnJhcnkuDQorIw0KKyMgIFRoaXMgbGlicmFyeSBwcm92aWRlcyBhbiBpbnRlcmZhY2UgdG8gcmVx dWVzdCBub24tTU1SQU0gcGFnZXMgdG8gYmUgbWFwcGVkL3VuYmxvY2tlZA0KKyMgIGZyb20gaW5z aWRlIE1NIGVudmlyb25tZW50Lg0KKyMNCisjICBGb3IgTU0gbW9kdWxlcyB0aGF0IG5lZWQgdG8g YWNjZXNzIHJlZ2lvbnMgb3V0c2lkZSBvZiBNTVJBTXMsIHRoZSBhZ2VudHMgdGhhdCBzZXQgdXAN CisjICB0aGVzZSByZWdpb25zIGFyZSByZXNwb25zaWJsZSBmb3IgaW52b2tpbmcgdGhpcyBBUEkg aW4gb3JkZXIgZm9yIHRoZXNlIG1lbW9yeSBhcmVhcw0KKyMgIHRvIGJlIGFjY2Vzc2VkIGZyb20g aW5zaWRlIE1NLg0KKyMNCisjICBDb3B5cmlnaHQgKGMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4N CisjICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KKyMNCisj DQorIyMNCisNCitbRGVmaW5lc10NCisgIElORl9WRVJTSU9OICAgICAgICAgICAgICAgICAgICA9 IDB4MDAwMTAwMUINCisgIEJBU0VfTkFNRSAgICAgICAgICAgICAgICAgICAgICA9IE1tVW5ibG9j a01lbW9yeUxpYk51bGwNCisgIE1PRFVMRV9VTklfRklMRSAgICAgICAgICAgICAgICA9IE1tVW5i bG9ja01lbW9yeUxpYk51bGwudW5pDQorICBGSUxFX0dVSUQgICAgICAgICAgICAgICAgICAgICAg PSA5RTg5MEY2OC01Qzk1LTRDMzEtOTVERC01OUU2Mjg2Rjg1RUENCisgIE1PRFVMRV9UWVBFICAg ICAgICAgICAgICAgICAgICA9IEJBU0UNCisgIFZFUlNJT05fU1RSSU5HICAgICAgICAgICAgICAg ICA9IDEuMA0KKyAgTElCUkFSWV9DTEFTUyAgICAgICAgICAgICAgICAgID0gTW1VbmJsb2NrTWVt b3J5TGliDQorDQorIw0KKyMgIFZBTElEX0FSQ0hJVEVDVFVSRVMgICAgICAgICAgID0gSUEzMiBY NjQNCisjDQorDQorW1NvdXJjZXNdDQorICBNbVVuYmxvY2tNZW1vcnlMaWJOdWxsLmMNCisNCitb UGFja2FnZXNdDQorICBNZGVQa2cvTWRlUGtnLmRlYw0KZGlmZiAtLWdpdCBhL01kZVBrZy9MaWJy YXJ5L01tVW5ibG9ja01lbW9yeUxpYi9NbVVuYmxvY2tNZW1vcnlMaWJOdWxsLnVuaSBiL01kZVBr Zy9MaWJyYXJ5L01tVW5ibG9ja01lbW9yeUxpYi9NbVVuYmxvY2tNZW1vcnlMaWJOdWxsLnVuaQ0K bmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAwMC4uZDdmMjcwOWEzZGNlDQot LS0gL2Rldi9udWxsDQorKysgYi9NZGVQa2cvTGlicmFyeS9NbVVuYmxvY2tNZW1vcnlMaWIvTW1V bmJsb2NrTWVtb3J5TGliTnVsbC51bmkNCkBAIC0wLDAgKzEsMjEgQEANCisvLyAvKiogQGZpbGUN CisvLyBOdWxsIGluc3RhbmNlIG9mIE1NIFVuYmxvY2sgUGFnZSBMaWJyYXJ5Lg0KKy8vDQorLy8g VGhpcyBsaWJyYXJ5IHByb3ZpZGVzIGFuIGludGVyZmFjZSB0byByZXF1ZXN0IG5vbi1NTVJBTSBw YWdlcyB0byBiZSBtYXBwZWQvdW5ibG9ja2VkDQorLy8gZnJvbSBpbnNpZGUgTU0gZW52aXJvbm1l bnQuDQorLy8NCisvLyBGb3IgTU0gbW9kdWxlcyB0aGF0IG5lZWQgdG8gYWNjZXNzIHJlZ2lvbnMg b3V0c2lkZSBvZiBNTVJBTXMsIHRoZSBhZ2VudHMgdGhhdCBzZXQgdXANCisvLyB0aGVzZSByZWdp b25zIGFyZSByZXNwb25zaWJsZSBmb3IgaW52b2tpbmcgdGhpcyBBUEkgaW4gb3JkZXIgZm9yIHRo ZXNlIG1lbW9yeSBhcmVhcw0KKy8vIHRvIGJlIGFjY2Vzc2VkIGZyb20gaW5zaWRlIE1NLg0KKy8v DQorLy8gQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uDQorLy8gU1BEWC1MaWNl bnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCisvLw0KKy8vICoqLw0KKw0KKw0K KyNzdHJpbmcgU1RSX01PRFVMRV9BQlNUUkFDVCAgICAgICAgICAgICAjbGFuZ3VhZ2UgZW4tVVMg Ik51bGwgaW5zdGFuY2Ugb2YgTU0gVW5ibG9jayBQYWdlIExpYnJhcnkuIg0KKw0KKyNzdHJpbmcg U1RSX01PRFVMRV9ERVNDUklQVElPTiAgICAgICAgICAjbGFuZ3VhZ2UgZW4tVVMgIlRoaXMgbGli cmFyeSBwcm92aWRlcyBhbiBpbnRlcmZhY2UgdG8gcmVxdWVzdCBub24tTU1SQU0gcGFnZXMgdG8g YmUgbWFwcGVkL3VuYmxvY2tlZCBmcm9tIGluc2lkZSBNTSBlbnZpcm9ubWVudC5cbiINCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJGb3Ig TU0gbW9kdWxlcyB0aGF0IG5lZWQgdG8gYWNjZXNzIHJlZ2lvbnMgb3V0c2lkZSBvZiBNTVJBTXMs IHRoZSBhZ2VudHMgdGhhdCBzZXQgdXAgdGhlc2UgcmVnaW9ucyBhcmUgcmVzcG9uc2libGUgZm9y IGludm9raW5nIHRoaXMgQVBJIGluIG9yZGVyIGZvciB0aGVzZSBtZW1vcnkgYXJlYXMgdG8gYmUg YWNjZXNzZWQgZnJvbSBpbnNpZGUgTU0uIg0KKw0KZGlmZiAtLWdpdCBhL01kZVBrZy9NZGVQa2cu ZGVjIGIvTWRlUGtnL01kZVBrZy5kZWMNCmluZGV4IDM5MjhkYjY1ZDE4OC4uMzJhOWUwMDljODEz IDEwMDY0NA0KLS0tIGEvTWRlUGtnL01kZVBrZy5kZWMNCisrKyBiL01kZVBrZy9NZGVQa2cuZGVj DQpAQCAtMjU3LDYgKzI1NywxMSBAQCBbTGlicmFyeUNsYXNzZXNdDQogICAjDQogICBVbml0VGVz dEhvc3RCYXNlTGlifFRlc3QvVW5pdFRlc3QvSW5jbHVkZS9MaWJyYXJ5L1VuaXRUZXN0SG9zdEJh c2VMaWIuaA0KDQorICAjIyAgQGxpYnJhcnljbGFzcyAgVGhpcyBsaWJyYXJ5IHByb3ZpZGVzIGFu IGludGVyZmFjZSBmb3IgRFhFIGRyaXZlcnMgdG8gcmVxdWVzdCBNTSBlbnZpcm9ubWVudA0KKyAg IyAgIHRvIG1hcC91bmJsb2NrIGEgbWVtb3J5IHJlZ2lvbiBmb3IgYWNjZXNzaWJpbGl0eSBpbnNp ZGUgTU0uDQpbTGltaW5nXSBJcyB0aGlzIGxpYnJhcnkgZm9yIERYRSBkcml2ZXIgb25seT8gSWYg bm90LCBwbGVhc2UgdXBkYXRlIHRoaXMgY29tbWVudHMuDQpPdGhlciBwYXJ0IGlzIGdvb2QgdG8g bWUuIFJldmlld2VkLWJ5OiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQoN ClRoYW5rcw0KTGltaW5nDQorICAjDQorICBNbVVuYmxvY2tNZW1vcnlMaWJ8SW5jbHVkZS9MaWJy YXJ5L01tVW5ibG9ja01lbW9yeUxpYi5oDQorDQogW0xpYnJhcnlDbGFzc2VzLklBMzIsIExpYnJh cnlDbGFzc2VzLlg2NF0NCiAgICMjICBAbGlicmFyeWNsYXNzICBBYnN0cmFjdHMgYm90aCBTL1cg U01JIGdlbmVyYXRpb24gYW5kIGRldGVjdGlvbi4NCiAgICMjDQpkaWZmIC0tZ2l0IGEvTWRlUGtn L01kZVBrZy5kc2MgYi9NZGVQa2cvTWRlUGtnLmRzYw0KaW5kZXggY2UwMDkwODY4MTVmLi43OTYy OWUzZjkzYmEgMTAwNjQ0DQotLS0gYS9NZGVQa2cvTWRlUGtnLmRzYw0KKysrIGIvTWRlUGtnL01k ZVBrZy5kc2MNCkBAIC0xNjgsNiArMTY4LDcgQEAgW0NvbXBvbmVudHMuSUEzMiwgQ29tcG9uZW50 cy5YNjRdDQogICBNZGVQa2cvTGlicmFyeS9TbW1QY2lFeHByZXNzTGliL1NtbVBjaUV4cHJlc3NM aWIuaW5mDQogICBNZGVQa2cvTGlicmFyeS9TbWlIYW5kbGVyUHJvZmlsZUxpYk51bGwvU21pSGFu ZGxlclByb2ZpbGVMaWJOdWxsLmluZg0KICAgTWRlUGtnL0xpYnJhcnkvTW1TZXJ2aWNlc1RhYmxl TGliL01tU2VydmljZXNUYWJsZUxpYi5pbmYNCisgIE1kZVBrZy9MaWJyYXJ5L01tVW5ibG9ja01l bW9yeUxpYi9NbVVuYmxvY2tNZW1vcnlMaWJOdWxsLmluZg0KDQogW0NvbXBvbmVudHMuRUJDXQ0K ICAgTWRlUGtnL0xpYnJhcnkvQmFzZUlvTGliSW50cmluc2ljL0Jhc2VJb0xpYkludHJpbnNpYy5p bmYNCi0tDQoyLjMwLjAud2luZG93cy4xDQoNCg0KDQo= --_000_MWHPR06MB310200B42037F82B6C7BFB8FF3969MWHPR06MB3102namp_ Content-Type: text/html; charset="gb2312" Content-Transfer-Encoding: quoted-printable

Thanks, Liming. I will send the updated patches sho= rtly.

 

Regards,

Kun

 

From: gaoliming
Sent: Thursday, March 4, 2021 19:15
To: devel@edk2.groups.io; kun.q@outlook.com; 'Mich= ael D Kinney'; 'Zhiguang Liu'
Cc: 'Hao A Wu'; 'Jiewen Yao'; 'Laszlo Ersek'<= br> Subject: =BB=D8= = =B8=B4: [edk2-devel] [PATCH v5 1/7] MdePkg: MmUnblockMemoryLib: Add= ed definition and null instance

 

Kun:

 I have one minor comment. Please see it.

 

Thanks

Liming

=B7=A2=BC=FE=C8=CB:<= /span> devel@edk2.groups.io <de= vel@edk2.groups.io> =B4=FA=B1=ED Kun Qin
=B7=A2=CB=CD=CA=B1=BC=E4: 2021=C4=EA3=D4=C25=C8=D5 8:23
=CA=D5=BC=FE=C8=CB: devel@edk2.groups.i= o; Michael D Kinney <michael.d.kinney@intel.com>; gaoliming <gaoli= ming@byosoft.com.cn>; Zhiguang Liu <zhiguang.liu@intel.com>
=B3=AD=CB=CD: Hao A Wu <hao.a.wu@int= el.com>; Jiewen Yao <jiewen.yao@intel.com>; Laszlo Ersek <lerse= k@redhat.com>
=D6=F7=CC=E2: Re: [edk2-devel] [PATCH v= 5 1/7] MdePkg: MmUnblockMemoryLib: Added definition and null instance<= /o:p>

 

Hi Mike/Liming/Zhiguang,

 

Could you please review this patch and let me know = if you have any feedback on this patch? Any input is appreciated.

 

Regards,

Kun

 

From: K= un Qin
Sent: Thursday, March 4, 2021 10:58
To: devel@edk2.groups.io
Cc:
Michael D Kinney<= /a>; Liming Gao; Zhiguang Liu= ; Hao A Wu; Jiewen Yao; Laszlo Ersek
Subject: [PATCH v5 1/7] MdePkg: MmUnblockMemoryLib: Added definitio= n and null instance

 

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3168

This interface provides an abstration layer to allow MM modules to access<= br> requested areas that are outside of MMRAM. On MM model that blocks all
non-MMRAM accesses, areas requested through this API will be mapped or
unblocked for accessibility inside MM environment.

For MM modules that need to access regions outside of MMRAMs, the agents that set up these regions are responsible for invoking this API in order for these memory areas to be accessible from inside MM.

Example usages:
1. To enable runtime cache feature for variable service, Variable MM
module will need to access the allocated runtime buffer. Thus the agent sets up these buffers, VariableSmmRuntimeDxe, will need to invoke this
API to make these regions accessible by Variable MM.
2. For TPM ACPI table to communicate to physical presence handler, the
corresponding NVS region has to be accessible from inside MM. Once the
NVS region are assigned, it needs to be unblocked thourgh this API.

Cc: Michael D Kinney <mic= hael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@b= yosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.li= u@intel.com>
Cc: Hao A Wu <hao.a.wu@intel.com<= /a>>
Cc: Jiewen Yao <
jiewen.yao@inte= l.com>
Cc: Laszlo Ersek <lersek@redhat.co= m>

Signed-off-by: Kun Qin <kun.q@outl= ook.com>
---

Notes:
    v5:
    - Downgraded data types from EFI_* to RETURN_*. [Laszlo= ]
   
    v4:
    - Added more commit message [Laszlo]
    - Added UNI file [Hao]
   
    v3:
    - Move interface to MdePkg [Hao, Liming, Jiewen]
    - Remove Dxe prefix [Jiewen]
   
    v2:
    - Resend with practical usage. No change [Hao]

 MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.c &nbs= p; | 44 ++++++++++++++++++++
 MdePkg/Include/Library/MmUnblockMemoryLib.h    &= nbsp;           &nbs= p; | 44 ++++++++++++++++++++
 MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.inf | 34 ++= +++++++++++++
 MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.uni | 21 ++= ++++++++
 MdePkg/MdePkg.dec        &nb= sp;            =             &nb= sp;          |  5 +++
 MdePkg/MdePkg.dsc        &nb= sp;            =             &nb= sp;          |  1 +
 6 files changed, 149 insertions(+)

diff --git a/MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.c b/= MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.c
new file mode 100644
index 000000000000..b205c9122df8
--- /dev/null
+++ b/MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.c
@@ -0,0 +1,44 @@
+/** @file
+  Null instance of MM Unblock Page Library.
+
+  This library provides an interface to request non-MMRAM pages to b= e mapped/unblocked
+  from inside MM environment.
+
+  For MM modules that need to access regions outside of MMRAMs, the = agents that set up
+  these regions are responsible for invoking this API in order for t= hese memory areas
+  to be accessed from inside MM.
+
+  Copyright (c) Microsoft Corporation.
+  SPDX-License-Identifier: BSD-2-Clause-Patent
+
+**/
+
+#include <Base.h>
+
+/**
+  This API provides a way to unblock certain data pages to be access= ible inside MM environment.
+
+  @param  UnblockAddress      &nb= sp;       The address of buffer caller reques= ts to unblock, the address
+            &= nbsp;           &nbs= p;             = has to be page aligned.
+  @param  NumberOfPages      &nbs= p;        The number of pages requested = to be unblocked from MM
+            &= nbsp;           &nbs= p;             = environment.
+
+  @retval RETURN_SUCCESS       &n= bsp;      The request goes through successfully. +  @retval RETURN_NOT_AVAILABLE_YET    The requested f= unctionality is not produced yet.
+  @retval RETURN_UNSUPPORTED      &nbs= p;   The requested functionality is not supported on current plat= form.
+  @retval RETURN_SECURITY_VIOLATION   The requested addres= s failed to pass security check for
+            &= nbsp;           &nbs= p;             = unblocking.
+  @retval RETURN_INVALID_PARAMETER    Input address e= ither NULL pointer or not page aligned.
+  @retval RETURN_ACCESS_DENIED      &n= bsp; The request is rejected due to system has passed certain boot
+            &= nbsp;           &nbs= p;             = phase.
+
+**/
+RETURN_STATUS
+EFIAPI
+MmUnblockMemoryRequest (
+  IN PHYSICAL_ADDRESS       UnblockAdd= ress,
+  IN UINT64         &nb= sp;       NumberOfPages
+  )
+{
+  return RETURN_UNSUPPORTED;
+}
diff --git a/MdePkg/Include/Library/MmUnblockMemoryLib.h b/MdePkg/Include/= Library/MmUnblockMemoryLib.h
new file mode 100644
index 000000000000..00fab530a3bc
--- /dev/null
+++ b/MdePkg/Include/Library/MmUnblockMemoryLib.h
@@ -0,0 +1,44 @@
+/** @file
+  MM Unblock Memory Library Interface.
+
+  This library provides an interface to request non-MMRAM pages to b= e mapped/unblocked
+  from inside MM environment.
+
+  For MM modules that need to access regions outside of MMRAMs, the = agents that set up
+  these regions are responsible for invoking this API in order for t= hese memory areas
+  to be accessed from inside MM.
+
+  Copyright (c) Microsoft Corporation.
+  SPDX-License-Identifier: BSD-2-Clause-Patent
+
+**/
+
+#ifndef MM_UNBLOCK_MEMORY_LIB_H_
+#define MM_UNBLOCK_MEMORY_LIB_H_
+
+/**
+  This API provides a way to unblock certain data pages to be access= ible inside MM environment.
+
+  @param  UnblockAddress      &nb= sp;       The address of buffer caller reques= ts to unblock, the address
+            &= nbsp;           &nbs= p;             = has to be page aligned.
+  @param  NumberOfPages      &nbs= p;        The number of pages requested = to be unblocked from MM
+            &= nbsp;           &nbs= p;             = environment.
+
+  @retval RETURN_SUCCESS       &n= bsp;      The request goes through successfully. +  @retval RETURN_NOT_AVAILABLE_YET    The requested f= unctionality is not produced yet.
+  @retval RETURN_UNSUPPORTED      &nbs= p;   The requested functionality is not supported on current plat= form.
+  @retval RETURN_SECURITY_VIOLATION   The requested addres= s failed to pass security check for
+            &= nbsp;           &nbs= p;             = unblocking.
+  @retval RETURN_INVALID_PARAMETER    Input address e= ither NULL pointer or not page aligned.
+  @retval RETURN_ACCESS_DENIED      &n= bsp; The request is rejected due to system has passed certain boot
+            &= nbsp;           &nbs= p;             = phase.
+
+**/
+RETURN_STATUS
+EFIAPI
+MmUnblockMemoryRequest (
+  IN PHYSICAL_ADDRESS       UnblockAdd= ress,
+  IN UINT64         &nb= sp;       NumberOfPages
+);
+
+#endif // MM_UNBLOCK_MEMORY_LIB_H_
diff --git a/MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.inf = b/MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.inf
new file mode 100644
index 000000000000..8ecb767ff7bd
--- /dev/null
+++ b/MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.inf
@@ -0,0 +1,34 @@
+## @file
+#  Null instance of MM Unblock Page Library.
+#
+#  This library provides an interface to request non-MMRAM pages to = be mapped/unblocked
+#  from inside MM environment.
+#
+#  For MM modules that need to access regions outside of MMRAMs, the= agents that set up
+#  these regions are responsible for invoking this API in order for = these memory areas
+#  to be accessed from inside MM.
+#
+#  Copyright (c) Microsoft Corporation.
+#  SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+#
+##
+
+[Defines]
+  INF_VERSION         &= nbsp;          =3D 0x0001001B<= br> +  BASE_NAME         &nb= sp;            =3D M= mUnblockMemoryLibNull
+  MODULE_UNI_FILE        &nb= sp;       =3D MmUnblockMemoryLibNull.uni
+  FILE_GUID         &nb= sp;            =3D 9= E890F68-5C95-4C31-95DD-59E6286F85EA
+  MODULE_TYPE         &= nbsp;          =3D BASE
+  VERSION_STRING        &nbs= p;        =3D 1.0
+  LIBRARY_CLASS         = ;         =3D MmUnblockMemoryLib +
+#
+#  VALID_ARCHITECTURES       &nbs= p;   =3D IA32 X64
+#
+
+[Sources]
+  MmUnblockMemoryLibNull.c
+
+[Packages]
+  MdePkg/MdePkg.dec
diff --git a/MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.uni = b/MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.uni
new file mode 100644
index 000000000000..d7f2709a3dce
--- /dev/null
+++ b/MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.uni
@@ -0,0 +1,21 @@
+// /** @file
+// Null instance of MM Unblock Page Library.
+//
+// This library provides an interface to request non-MMRAM pages to be ma= pped/unblocked
+// from inside MM environment.
+//
+// For MM modules that need to access regions outside of MMRAMs, the agen= ts that set up
+// these regions are responsible for invoking this API in order for these= memory areas
+// to be accessed from inside MM.
+//
+// Copyright (c) Microsoft Corporation.
+// SPDX-License-Identifier: BSD-2-Clause-Patent
+//
+// **/
+
+
+#string STR_MODULE_ABSTRACT       &nbs= p;     #language en-US "Null instance of MM Unbloc= k Page Library."
+
+#string STR_MODULE_DESCRIPTION       &= nbsp;  #language en-US "This library provides an interface to req= uest non-MMRAM pages to be mapped/unblocked from inside MM environment.\n&q= uot;
+            &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;      "For MM modules that need to access r= egions outside of MMRAMs, the agents that set up these regions are responsi= ble for invoking this API in order for these memory areas to be accessed fr= om inside MM."
+
diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec
index 3928db65d188..32a9e009c813 100644
--- a/MdePkg/MdePkg.dec
+++ b/MdePkg/MdePkg.dec
@@ -257,6 +257,11 @@ [LibraryClasses]
   #
   UnitTestHostBaseLib|Test/UnitTest/Include/Library/UnitTestHos= tBaseLib.h
 
+  ##  @libraryclass  This library provides an interface fo= r DXE drivers to request MM environment
+  #   to map/unblock a memory region for accessibility ins= ide MM.
[Liming] Is this library for DXE driver only? If not, please update this c= omments.

Other part is good t= o me. Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>

 

Thanks

Liming

+  #
+  MmUnblockMemoryLib|Include/Library/MmUnblockMemoryLib.h
+<= /p>

 [LibraryClasse= s.IA32, LibraryClasses.X64]
   ##  @libraryclass  Abstracts both S/W SMI generatio= n and detection.
   ##
diff --git a/MdePkg/MdePkg.dsc b/MdePkg/MdePkg.dsc
index ce009086815f..79629e3f93ba 100644
--- a/MdePkg/MdePkg.dsc
+++ b/MdePkg/MdePkg.dsc
@@ -168,6 +168,7 @@ [Components.IA32, Components.X64]
   MdePkg/Library/SmmPciExpressLib/SmmPciExpressLib.inf
   MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibN= ull.inf
   MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf
+  MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.inf
 
 [Components.EBC]
   MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
--
2.30.0.windows.1

 

 

--_000_MWHPR06MB310200B42037F82B6C7BFB8FF3969MWHPR06MB3102namp_-- --_004_MWHPR06MB310200B42037F82B6C7BFB8FF3969MWHPR06MB3102namp_ Content-Type: image/png; name="E026B2D1C91645FFB25B0B59DD9EAEF8.png" Content-Description: E026B2D1C91645FFB25B0B59DD9EAEF8.png Content-Disposition: inline; filename="E026B2D1C91645FFB25B0B59DD9EAEF8.png"; size=140; creation-date="Fri, 05 Mar 2021 04:09:02 GMT"; modification-date="Fri, 05 Mar 2021 04:09:02 GMT" Content-ID: Content-Transfer-Encoding: base64 iVBORw0KGgoAAAANSUhEUgAAAsQAAAABCAYAAADZ77itAAAAAXNSR0IArs4c6QAAAARnQU1BAACx jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAhSURBVEhL7cMBDQAACAMg+5cygQkeRoMIG9WT VVXVn7MHYi5moJeByLMAAAAASUVORK5CYII= --_004_MWHPR06MB310200B42037F82B6C7BFB8FF3969MWHPR06MB3102namp_--