On 01/15/14 07:31, Gary Ching-Pang Lin wrote: > Hi, > > I recently started to build OVMF on my openSUSE 13.1 box and found the > secure boot config menu went blank. After several tests, the root > cause is identified: > > https://sourceware.org/git/?p=glibc.git;a=commit;h=2d48b41c8fa610067c4d664ac2339ae6ca43e78c > > This glibc commit is included in glibc 2.18 and introduces a faster > memcpy which somehow breaks the sb config menu. > > The known affected system: openSUSE 13.1 and fedora 20
That glibc commit seems to be full of SSE code. For reference, please see the following OVMF commit: https://github.com/tianocore/edk2/commit/4a8266f5 Apparently the glibc code (or maybe a gcc intrinsic?) "leaks" into the OVMF build. This should never happen. We need to find the offending code in OVMF. I have no better idea than: Please locate the EFI file corresponding to the secure boot config form (I think it's called SecureBootConfigDxe.efi) in your Build directory. Then please run "objdump -S" on it, and try to find any SSE instructions (like movdqu) and cross-reference them with the C source. I'm not 100% sure but for the last step you might need to build your tree with the following patch in place first: diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template index ec4eb97..129f043 100644 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -3129,7 +3129,7 @@ NOOPT_DDK3790xASL_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF *_*_*_OBJCOPY_FLAGS = objcopy not needed for *_*_*_SYMRENAME_PATH = echo *_*_*_SYMRENAME_FLAGS = Symbol renaming not needed for -DEBUG_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=$(DEBUG_DIR)\$(MODULE_NAME).debug +DEBUG_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=$(DEBUG_DIR)/$(MODULE_NAME).debug RELEASE_*_*_OBJCOPY_ADDDEBUGFLAG = DEFINE GCC_ALL_CC_FLAGS = -g -Os -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-missing-braces -Wno-array-bounds -c -include AutoGen.h (If this proves indeed necessary, then you need to make sure that this change takes effect in "Conf/tools_def.txt" too.) Thanks, Laszlo ------------------------------------------------------------------------------ CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel