From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx.groups.io with SMTP id smtpd.web11.5706.1576821798725395352 for ; Thu, 19 Dec 2019 22:03:18 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.20, mailfrom: zhichao.gao@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 19 Dec 2019 22:03:18 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,334,1571727600"; d="scan'208";a="248588080" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga002.fm.intel.com with ESMTP; 19 Dec 2019 22:03:17 -0800 Received: from fmsmsx102.amr.corp.intel.com (10.18.124.200) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 19 Dec 2019 22:03:17 -0800 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by FMSMSX102.amr.corp.intel.com (10.18.124.200) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 19 Dec 2019 22:03:17 -0800 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.19]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.29]) with mapi id 14.03.0439.000; Fri, 20 Dec 2019 14:03:16 +0800 From: "Gao, Zhichao" To: "Ni, Ray" , "devel@edk2.groups.io" CC: "Kinney, Michael D" , "Gao, Liming" , Vitaly Cheptsov Subject: Re: [edk2-devel] [PATCH V3 0/2] *MdePkg/UefiDevicePathLib: Separate the lib instances Thread-Topic: [edk2-devel] [PATCH V3 0/2] *MdePkg/UefiDevicePathLib: Separate the lib instances Thread-Index: AQHVtUhaCeatACBUGUC6/Bj2EdtJQafCh0NQgAABP+A= Date: Fri, 20 Dec 2019 06:03:15 +0000 Message-ID: <3CE959C139B4C44DBEA1810E3AA6F9000B8A4289@SHSMSX101.ccr.corp.intel.com> References: <20191218021036.23072-1-zhichao.gao@intel.com> <734D49CCEBEEF84792F5B80ED585239D5C3A3F54@SHSMSX104.ccr.corp.intel.com> In-Reply-To: <734D49CCEBEEF84792F5B80ED585239D5C3A3F54@SHSMSX104.ccr.corp.intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: zhichao.gao@intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Ray, I knew there is one in MdePkg. But it has duplicate code with UefiDevicePa= thLib. That is why I add the Mandatory one. And it is recommended to use the one in UefiDevicePathLib path. Thanks, Zhichao > -----Original Message----- > From: Ni, Ray > Sent: Friday, December 20, 2019 1:50 PM > To: devel@edk2.groups.io; Gao, Zhichao > Cc: Kinney, Michael D ; Gao, Liming > ; Vitaly Cheptsov > Subject: RE: [edk2-devel] [PATCH V3 0/2] *MdePkg/UefiDevicePathLib: Sepa= rate > the lib instances >=20 > Zhichao, > \MdePkg\Library\UefiDevicePathLibDevicePathProtocol\ contains the versio= n > that hard-depends on the protocol. > I don't think you need to add another version. >=20 > Thanks, > Ray >=20 > > -----Original Message----- > > From: devel@edk2.groups.io On Behalf Of Gao, > > Zhichao > > Sent: Wednesday, December 18, 2019 10:11 AM > > To: devel@edk2.groups.io > > Cc: Kinney, Michael D ; Gao, Liming > > ; Vitaly Cheptsov > > Subject: [edk2-devel] [PATCH V3 0/2] *MdePkg/UefiDevicePathLib: > > Separate the lib instances > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2298 > > > > The UefiDevicePathLibOptionalDevicePathProtocolConstructor's > > implementation > > isn't match with its instance name. > > Remove the ASSERT and depex of the gEfiDevicePathUtilitiesProtocolGuid > > because of "Optional". > > > > Add a mandatory instance to force using the DevicePathUtilities, > > DevicePathToText and DevicePathFromText protocol with the ASSERT and > > depex. > > > > V2: > > The optional lib instance's construction should return success all the > > time. > > Change the desciption of the optional lib uni file. > > Change the copyright date of the mandatory one's uni file. > > > > V3: > > Remove the Status variable in > > UefiDevicePathLibOptionalDevicePathProtocolConstructor. > > The Status would cause GCC build fail because the variable is > > initialized but not used. > > Since it is useless for the constructor, directly remove it. > > > > Cc: Michael D Kinney > > Cc: Liming Gao > > Cc: Vitaly Cheptsov > > Signed-off-by: Zhichao Gao > > > > Zhichao Gao (2): > > MdePkg/UefiDevicePathLib: Separate the device path lib > > MdePkg/dsc: Add UefiDevicePathLibMandatoryDevicePathProtocol for > > build > > > > ...DevicePathLibMandatoryDevicePathProtocol.c | 469 > > ++++++++++++++++++ > > ...vicePathLibMandatoryDevicePathProtocol.inf | 86 ++++ > > ...vicePathLibMandatoryDevicePathProtocol.uni | 18 + > > ...iDevicePathLibOptionalDevicePathProtocol.c | 21 +- > > ...evicePathLibOptionalDevicePathProtocol.inf | 5 +- > > ...evicePathLibOptionalDevicePathProtocol.uni | 6 +- > > MdePkg/MdePkg.dsc | 3 +- > > 7 files changed, 587 insertions(+), 21 deletions(-) create mode > > 100644 > > MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibMandatoryDevicePat > > hProtocol.c > > create mode 100644 > > MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibMandatoryDevicePat > > hProtocol.inf > > create mode 100644 > > MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibMandatoryDevicePat > > hProtocol.uni > > > > -- > > 2.21.0.windows.1 > > > > > >=20