On 06/25/15 10:27, Ard Biesheuvel wrote:
> On 25 June 2015 at 10:08, Ard Biesheuvel <ard.biesheu...@linaro.org> wrote:
>> On 25 June 2015 at 09:58, Laszlo Ersek <ler...@redhat.com> wrote:
>>> On 06/25/15 01:31, Yao, Jiewen wrote:
>>>> Hi Ard
>>>> You are right that END_OF_DXE must be signal in Bds.
>>>>
>>>> My thought is that this event should be signal in "platform BDS"
>>>> instead of "generic BDS".
>>>>
>>>> The reason is that only platform know when to exit platform
>>>> manufacture auth state, and platform may have some special step
>>>> before that.
>>>>
>>>> Signing end of dxe in generic BDS may break existing platform.
>>>
>>> Ard, I think we have the justification we needed for going with
>>> platform-specific End-of-Dxe signalling. Please update your original
>>> patch with a link to Jiewen's message:
>>>
>>> http://thread.gmane.org/gmane.comp.bios.tianocore.devel/16088/focus=16109
>>>
>>> And I'm going to ACK it like that for ArmVirtPkg.
>>>
>>
>> OK, fair enough.
>>
>>> (
>>> Note, this is actually option #2 from my email
>>> <http://thread.gmane.org/gmane.comp.bios.tianocore.devel/16088/focus=16095>:
>>>
>>>> - Or, OVMF will have to signal End-of-Dxe within the
>>>>   SaveS3BootScript() function (see again the patch), right before
>>>>   installing "gEfiDxeSmmReadyToLockProtocolGuid". Only that would
>>>>   place the new step (2) between existent steps (1) and (3).
>>>>
>>>>   In parallel, ArmVirtPkg, which doesn't implement S3 or SMM, could
>>>>   signal End-of-Dxe wherever it wanted to. Meaning, your patch is
>>>>   correct (assuming it doesn't break anything in practice), *if* we
>>>>   prefer this option.
>>> )
>>>
>>> Jiewen,
>>>
>>>> Would you mind to let me know which platform forget to signal this,
>>>
>>> That's every single platform in the open source edk2 tree that uses
>>> Intel BDS.
>>>
>>>> and can we fix it in platform BDS?
>>>
>>> Yes, we can do that; Ard already posted a patch with such an approach
>>> for ArmVirtPkg, and I intend to do the same for OvmfPkg. Our main doubt
>>> was whether it was *right* (by design) to do this separately for each
>>> platform (in the respective PlatformBdsLib instance), as opposed to
>>> doing it centrally in the BDS driver.
>>>
>>> You just lifted that doubt, so we know the way forward.
>>>
>>
>> Indeed. FYI, I noticed that S3Save () does the right thing if it is
>> invoked more than once.
>> That means you may be able to get away with calling it both in
>> PlatformBdsInit() (before end-of-DXE) *and* keep the original call
>> site in GenericBdsLib intact, and still end up with something that
>> works. It does rely on an implementation detail of AcpiS3Save though
> 
> ... which you are probably doing already, I guess ... :-)

Not sure if I understand right, but if you mean that OVMF's platform BDS
already calls S3Save directly -- that's not the case. We currently rely
on the call inside the BDS driver.

Thanks
Laszlo

------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors 
network devices and physical & virtual servers, alerts via email & sms 
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to