Hi Mike,

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.

Thanks
Ashish

-----Original Message-----
From: Kinney, Michael D <michael.d.kin...@intel.com> 
Sent: Monday, January 7, 2019 3:23 PM
To: Ashish Singhal <ashishsin...@nvidia.com>; edk2-devel@lists.01.org; Gao, 
Liming <liming....@intel.com>; Fu, Siyuan <siyuan...@intel.com>; Wu, Jiaxin 
<jiaxin...@intel.com>; Kinney, Michael D <michael.d.kin...@intel.com>
Subject: RE: [PATCH v3 0/2] Provide UEFILib functions for protocol 
uninstallation.

Hi Ashish,

My main concern with this patch is that the generated code for optimized 
RELEASE builds is not as small.

>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.

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.

Thanks,

Mike

> -----Original Message-----
> From: Ashish Singhal [mailto:ashishsin...@nvidia.com]
> Sent: Monday, January 7, 2019 6:02 AM
> To: edk2-devel@lists.01.org; Kinney, Michael D 
> <michael.d.kin...@intel.com>; Gao, Liming <liming....@intel.com>; Fu, 
> Siyuan <siyuan...@intel.com>; Wu, Jiaxin <jiaxin...@intel.com>
> Subject: RE: [PATCH v3 0/2] Provide UEFILib functions for protocol 
> uninstallation.
> 
> + Maintainers
> 
> -----Original Message-----
> From: Ashish Singhal <ashishsin...@nvidia.com>
> Sent: Sunday, January 6, 2019 9:38 PM
> To: edk2-devel@lists.01.org
> Cc: Ashish Singhal <ashishsin...@nvidia.com>
> 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.
> -------------------------------------------------------
> ----------------------------
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to