On 02/19/16 10:43, Laszlo Ersek wrote:
> On 02/19/16 09:59, David Woodhouse wrote:
>> On Fri, 2016-02-19 at 07:59 +0000, Long, Qin wrote:
>>> I agree those changes really make sense for better alignment, under
>>> both 1.0.2xx and 1.1 HEAD. The final out-of-box support will be
>>> wonderful. 
>>> The updates (http://git.infradead.org/users/dwmw2/edk2.git) looks
>>> good to me. And I will follow more validations, and start the next
>>> integration step-by-step. 
>>
>> Great, thanks. I should note that, as before, I haven't actually done
>> any real *testing* of this lot. Only build testing under Linux. I think
>> I did manage to create a Windows VM with a build environment for EDK2
>> at one point; I should at least dust that off.
> 
> I can test this for you, if you give me precise instructions.
> 
> (I'm asking for instructions because CryptoPkg/Include/openssl/README is
> deleted in one of the early patches.)

I'm testing David's patches from his repo referenced above, master branch, 
commits

     1  81009e3cff24 CryptoPkg: Use OpenSSL include directory directly
     2  8a40ff734a1e CryptoPkg/OpensslLib: Include complete copy of 
opensslconf.h
     3  d8b5c31bed60 CryptoPkg/OpensslLib: Update OpenSSL patch
     4  b68dc8e0bb53 CryptoPkg/OpensslLib: Automatically configure OpenSSL and 
generate file list
     5  61e047fb19dd CryptoPkg: Support building with OpenSSL HEAD (1.1.0-devel)
     6  1e89cb2399ba CryptoPkg: Abuse internal headers to make OpenSSL HEAD 
build work

First of all, I built it for:
- OvmfPkg/OvmfIa32.dsc
- OvmfPkg/OvmfIa32X64.dsc
- OvmfPkg/OvmfX64.dsc
- ArmVirtPkg/ArmVirtQemu.dsc (AARCH64 architecture)

The builds complete for the first three DSC files, but it fails for the last 
one:

> .../Build/ArmVirtQemu-AARCH64/DEBUG_GCC48/AARCH64/CryptoPkg/Library/OpensslLib/OpensslLib/OUTPUT/OpensslLib.lib(poly1305.obj):
>  In function `poly1305_blocks':
> .../CryptoPkg/Library/OpensslLib/openssl/crypto/poly1305/poly1305.c:194: 
> undefined reference to `__multi3'
> .../CryptoPkg/Library/OpensslLib/openssl/crypto/poly1305/poly1305.c:195: 
> undefined reference to `__multi3'
> .../CryptoPkg/Library/OpensslLib/openssl/crypto/poly1305/poly1305.c:196: 
> undefined reference to `__multi3'
> .../CryptoPkg/Library/OpensslLib/openssl/crypto/poly1305/poly1305.c:197: 
> undefined reference to `__multi3'

Anyway, for runtime testing, I used the OvmfIa32X64 build:

> (1a) Enroll keys, and confirm SB being active in the Fedora guest,
>      using my current build.
> (1b) Rebuild the firmware binary with your patches & instructions. Do
>      not touch the VM's varstore.
> (1c) Confirm SB is still active in the Fedora guest.

This step failed, with the OVMF debug output ending with:

> Booting Fedora
> FSOpen: Open '\EFI\fedora\shim.efi' Success
> 
> ASSERT_EFI_ERROR (Status = Invalid Parameter)
> ASSERT .../MdePkg/Library/UefiMemoryAllocationLib/MemoryAllocationLib.c(819): 
> !EFI_ERROR (Status)

I didn't continue testing after this point.


Just to be sure, I tested the same with edk2 upstream @ 
5458faf845a8c0e2ee37499ad410bb8ba1d45b15 ("MdePkg: BaseLib: fix AArch64 DAIF 
interrupt mask definitions").

At that revision, all four DSCs build fine, and runtime step (1c) succeeds as 
well.

Thanks
Laszlo

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to