Hi Brian,

Thanks for your comments, we need internal discussion for your raised issues, 
will reply later this week. 

Thanks,
Eric
> -----Original Message-----
> From: Brian J. Johnson [mailto:bjohn...@sgi.com]
> Sent: Friday, February 19, 2016 5:18 AM
> To: Andrew Fish; Dong, Eric
> Cc: El-Haj-Mahmoud, Samer; Bi, Dandan; edk2-devel@lists.01.org; Gao, Liming; 
> Rothman, Michael A; Hale, Robert P; Kinney, Michael D
> Subject: Re: [edk2] [patch] MdeModulePkg: Make HII configuration settings 
> available to OS runtime
> 
> On 02/17/2016 10:25 PM, Andrew Fish wrote:
> >
> >> On Feb 17, 2016, at 6:50 PM, Dong, Eric <eric.d...@intel.com> wrote:
> >>
> >> Hi All,
> >>
> >> Thanks for your comments. I add my explanation below:
> >>
> >> Only hook ReadyToBoot event is not enough. Different drivers may hook this 
> >> event and some may update string package in their
> callback function. The order to call these callback functions is random, so 
> only hook this event may miss some changes.
> >>
> 
> Eric,
> 
> Could you enable your HII exporting callbacks in a ReadyToBoot event?
> Then you wouldn't needlessly pay the export cost each time a HII element
> is added or changed as drivers are loaded.
> 
> >> This feature is described in UEFI spec 2.6 chapter 31.2.11.1. It required 
> >> to export all HiiDatabae data and current configuration data.
> >
> > I don't see any language in that section that makes it required. It seems 
> > to just describe how to do it.
> >
> 
> Agreed.  And section 31.2.1.10 says:
> 
> =====
> When it is desired that the forms data be used in the presence of an
> O/S, this specification describes
> a means by which to support this capability. By being able to
> encapsulate the data and export it
> through standard means such that an O/S agent (e.g. forms
> browser/processor) can retrieve it, O/S-
> present usage models can be made available for further value-add
> implementations.
> =====
> 
> The wording implies that exporting is not always desired, and that
> O/S-present usage of forms data is a value-add feature, which a platform
> may choose to support or not.
> 
> >> We add this feature because we strongly encourage the export of config 
> >> data to support manageability of platform config both for pre-
> OS and OS runtime operations.
> >>
> >
> > Generally the UEFI spec and the edk2 don't try to force platform policy. 
> > For example exposing some configuration information could be
> considered a security vulnerability on some platforms, so it should not be 
> forced on a platform.
> >
> > Thanks,
> >
> > Andrew Fish
> >
> >> Also we collect the performance data from our reference platform(Detail 
> >> see below). The boot performance is small and we can
> ignore it. This feature cost extra 869KB, but we think the size cost is not 
> care because current we use 16M size of bios flash.
> >>
> >> HiiDatabase driver data size cost(This feature add in HiiDatabase driver):
> >>    Without this feature:
> >>            Used data size: 151KB
> >>    With this feature
> >>            Used data size: 1020 KB
> >>    PS: This extra size cost mainly depend on how much Hii packages in your 
> >> platform.
> >>
> >> Boot Time cost:
> >>    Without this feature:
> >>            Boot Time cost:    1st:3.353s       2nd: 3.035s
> >>    With this feature:
> >>            Boot Time cost:    1st: 3.125s      2nd: 3.126s
> >>
> >> Base on the above analysis, we provide this design and prefer to always 
> >> enable this feature instead of use a PCD to control it.
> >>
> >> Thanks,
> >> Eric
> >>
> 
> My particular concern involves a simulator (far slower than hardware)
> for an extremely large, complex server platform with a large amount of
> HII data.  On this platform, we end up disabling the largest but least
> used setup screens when running on the simulator, simply to avoid the
> time overhead of processing the HII data.  This saves many minutes of
> execution time.
> 
> >>> -----Original Message-----
> >>> From: El-Haj-Mahmoud, Samer [mailto:samer.el-haj-mahm...@hpe.com]
> >>> Sent: Wednesday, February 17, 2016 2:14 AM
> >>> To: Andrew Fish; Brian J. Johnson
> >>> Cc: Bi, Dandan; edk2-devel@lists.01.org; Dong, Eric; Gao, Liming
> >>> Subject: RE: [edk2] [patch] MdeModulePkg: Make HII configuration settings 
> >>> available to OS runtime
> >>>
> >>> +1
> >>>
> >>> I also would add there may be some HII strings that are hidden from user 
> >>> interfaces, and reflect settings for field service or
> >>> troubleshooting, and that a mass export to the OS may expose these 
> >>> settings to OS runtime code and possibly applications.
> >>>
> >>>
> >>>
> >>> -----Original Message-----
> >>> From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of 
> >>> Andrew Fish
> >>> Sent: Tuesday, February 16, 2016 10:37 AM
> >>> To: Brian J. Johnson <bjohn...@sgi.com>
> >>> Cc: Dandan Bi <dandan...@intel.com>; edk2-devel@lists.01.org; Eric Dong 
> >>> <eric.d...@intel.com>; Liming Gao
> <liming....@intel.com>
> >>> Subject: Re: [edk2] [patch] MdeModulePkg: Make HII configuration settings 
> >>> available to OS runtime
> >>>
> >>>
> >>>> On Feb 16, 2016, at 8:33 AM, Brian J. Johnson <bjohn...@sgi.com> wrote:
> >>>>
> >>>> On 02/16/2016 12:58 AM, Dandan Bi wrote:
> >>>>> This feature is aimed to allow OS make use of the HII database during
> >>>>> runtime. In this case, the contents of the HII Database is exported
> >>>>> to a buffer. The pointer to the buffer is placed in the EFI System
> >>>>> Configuration Table, where it can be retrieved by an OS application.
> >>>>>
> >>>>> Export the configuration data and contents of HiiDatabase when driver
> >>>>> add package, update package and remove package.
> >>>>> For string and image may also need to update the contents of
> >>>>> HiiDatabase when NewString/SetString, NewImage/SetImage.
> >>>>>
> >>>>> Cc: Liming Gao <liming....@intel.com>
> >>>>> Cc: Eric Dong <eric.d...@intel.com>
> >>>>> Contributed-under: TianoCore Contribution Agreement 1.0
> >>>>> Signed-off-by: Dandan Bi <dandan...@intel.com> ...
> >>>>
> >>>> Please make this behavior selectable via a PCD.  HII operations are very 
> >>>> expensive, especially on simulators.  I don't want to pay the
> >>> export time every time a package is added or string is changed.  Also, 
> >>> platforms should be able to decide if they want to offer this
> data to
> >>> the OS.
> >>>>
> >>>
> >>> +1
> >>>
> >>> I would want to opt out to NOT take the memory away from the OS if the 
> >>> platform did not care about the feature.
> >>>
> >>> Thanks,
> >>>
> >>> Andrew Fish
> >>>
> >>>> Why not just export the data once, using a "ready to boot" event hook?
> >>>>
> >>>> Thanks,
> >>>> --
> >>>>
> >>>> Brian J. Johnson
> >>>>
> >>>> --------------------------------------------------------------------
> >>>>
> >>>> My statements are my own, are not authorized by SGI, and do not
> >>>> necessarily represent SGI's positions.
> >>>> _______________________________________________
> >>>> edk2-devel mailing list
> >>>> edk2-devel@lists.01.org
> >>>> https://lists.01.org/mailman/listinfo/edk2-devel
> >>>
> >>> _______________________________________________
> >>> edk2-devel mailing list
> >>> edk2-devel@lists.01.org
> >>> https://lists.01.org/mailman/listinfo/edk2-devel
> >>
> >
> 
> 
> --
> 
>                                                  Brian
> 
> --------------------------------------------------------------------
> 
>     "If you want your dreams to come true:  Wake Up!"
>                                             -- Jaime Roman's Radio
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to