From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=134.134.136.126; helo=mga18.intel.com; envelope-from=michael.d.kinney@intel.com; receiver=edk2-devel@lists.01.org Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id BA51421962301 for ; Tue, 8 Jan 2019 08:25:59 -0800 (PST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jan 2019 08:25:58 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,454,1539673200"; d="scan'208";a="124307550" Received: from orsmsx107.amr.corp.intel.com ([10.22.240.5]) by FMSMGA003.fm.intel.com with ESMTP; 08 Jan 2019 08:25:58 -0800 Received: from orsmsx112.amr.corp.intel.com (10.22.240.13) by ORSMSX107.amr.corp.intel.com (10.22.240.5) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 8 Jan 2019 08:25:58 -0800 Received: from orsmsx113.amr.corp.intel.com ([169.254.9.240]) by ORSMSX112.amr.corp.intel.com ([169.254.3.62]) with mapi id 14.03.0415.000; Tue, 8 Jan 2019 08:25:58 -0800 From: "Kinney, Michael D" To: Ashish Singhal , "edk2-devel@lists.01.org" , "Gao, Liming" , "Fu, Siyuan" , "Wu, Jiaxin" , "Kinney, Michael D" Thread-Topic: [PATCH v3 0/2] Provide UEFILib functions for protocol uninstallation. Thread-Index: AQHUppGUVTO7/QBsjU+rYXlkwJr30KWkYLmggACPHoCAAJ+1oA== Date: Tue, 8 Jan 2019 16:25:57 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [10.22.254.139] MIME-Version: 1.0 Subject: Re: [PATCH v3 0/2] Provide UEFILib functions for protocol uninstallation. X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Jan 2019 16:25:59 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Ashish, Good point. I was looking at the code size of a single uncompressed UEFI Driver (DiskIoDxe). I suspect that the patch provides a more consistent pattern across all drivers that use these UefiLib APIs, and then provides better compression on an FV that contains many UEFI Drivers. I also suspect there may be a small size increase for the single compressed UEFI Driver use case for PCI Option ROMs. I will run a few more experiments this morning. Thanks, Mike > -----Original Message----- > From: Ashish Singhal [mailto:ashishsingha@nvidia.com] > Sent: Monday, January 7, 2019 2:51 PM > To: Kinney, Michael D ; > edk2-devel@lists.01.org; Gao, Liming > ; Fu, Siyuan > ; Wu, Jiaxin > Subject: RE: [PATCH v3 0/2] Provide UEFILib functions > for protocol uninstallation. >=20 > Hi Mike, >=20 > I build both DEBUG and RELEASE variant of the library > and they both built a few KB less in size compared to > what is in tip right now. Can you please help me with > the optimization settings you have enabled so that I > can try the same at my end? Also, if you want, we can > look at the optimization part going forward and fix the > issue first by pushing in PATCH v2 1/4 and PATCH v2 2/4 > which just adds uninstallation APIs keeping the same > code structure as for install. >=20 > Thanks > Ashish >=20 > -----Original Message----- > From: Kinney, Michael D > Sent: Monday, January 7, 2019 3:23 PM > To: Ashish Singhal ; edk2- > devel@lists.01.org; Gao, Liming ; > Fu, Siyuan ; Wu, Jiaxin > ; Kinney, Michael D > > Subject: RE: [PATCH v3 0/2] Provide UEFILib functions > for protocol uninstallation. >=20 > Hi Ashish, >=20 > My main concern with this patch is that the generated > code for optimized RELEASE builds is not as small. >=20 > From a source maintenance perspective, the patch you > have provided is easier to maintain. However, the > implementation of the APIs that install protocols was > done to make sure the optimizer produces the smallest > number of instructions to install the protocols. >=20 > I would prefer the APIs that install protocols remain > unchanged, and that only the new APIs to uninstall the > protocols be added. The same approach could be taken > in the implementation to produce the exact right form > of the uninstall action that is guaranteed to succeed > if the uninstall API matches the API that was used to > install. >=20 > Thanks, >=20 > Mike >=20 > > -----Original Message----- > > From: Ashish Singhal [mailto:ashishsingha@nvidia.com] > > Sent: Monday, January 7, 2019 6:02 AM > > To: edk2-devel@lists.01.org; Kinney, Michael D > > ; Gao, Liming > ; Fu, > > Siyuan ; Wu, Jiaxin > > > Subject: RE: [PATCH v3 0/2] Provide UEFILib functions > for protocol > > uninstallation. > > > > + Maintainers > > > > -----Original Message----- > > From: Ashish Singhal > > Sent: Sunday, January 6, 2019 9:38 PM > > To: edk2-devel@lists.01.org > > Cc: Ashish Singhal > > Subject: [PATCH v3 0/2] Provide UEFILib functions for > protocol > > uninstallation. > > > > An issue was seen in IScsiDxe in NetworkPkg where > driver cleanup after > > initialization failure was not done right. Bug 1428 > was filed in this > > regard. > > As per discussions with Mike, it was also discussed > that having > > UEFILib provide protocol uninstallation abstraction > would help to > > avoid these issues in the future. Bug 1429 was found > to track this. > > The first 2 patches take care of this. > > > > Patch number 1 also simplifies the UEFILib protocol > installation and > > uninstallation abstraction by adding a helper > function doing > > operations instead of every public function. > > > > Ashish Singhal (2): > > MdePkg/UefiLib: Abstract driver model protocol > uninstallation > > NetworkPkg/IScsiDxe: Use UEFILib APIs to uninstall > protocols. > > > > MdePkg/Include/Library/UefiLib.h | 103 +++ > > MdePkg/Library/UefiLib/UefiDriverModel.c | 1186 > > ++++++++---------------------- > > NetworkPkg/IScsiDxe/IScsiDriver.c | 31 +- > > 3 files changed, 435 insertions(+), 885 deletions(-) > > > > -- > > 2.7.4 > > > > ----------------------------------------------------- > -- > > ---------------------------- > > This email message is for the sole use of the > intended > > recipient(s) and may contain > > confidential information. Any unauthorized review, > use, disclosure or > > distribution is prohibited. If you are not the > intended recipient, > > please contact the sender by reply email and destroy > all copies of the > > original message. > > ----------------------------------------------------- > -- > > ----------------------------