amdese / ovmf Goto Github PK
View Code? Open in Web Editor NEWEDK2 / OVMF related projects
License: BSD 2-Clause "Simplified" License
EDK2 / OVMF related projects
License: BSD 2-Clause "Simplified" License
The OVMF image that is produced by OvmfPkg/AmdSev/AmdSevX64.dsc
fails to boot with VerifyBlob: Verifier called but no hashes table discoverd in MEMFD
. It seems like there should be a placeholder hash table in the OVMF image somewhere that QEMU would fill in with hashes when SNP and kernel-hashes=on
is selected.
Any hint as to what I'm doing wrong?
This is on snp-latest
branch.
CC: @tonycdot, @dmitrylavrenov
hello, I'm considering using this OVMF with the SNP VM. According to talks, I learned that the hash of kernel/initrd/cmdline should be inserted into the OVMF, and the OVMF needs to verify this hash when it loads the kernel and initrd into the memory. I searched online, but didn't find a tutorial telling me how to do this. Is there any docs showing the steps for this purpose?
With the current patchset, OVMF build fails for the ovmf-x86_64-smm
flavor (which is by default built in SUSE). The errors are like:
OvmfPkg/QemuFlashFvbServicesRuntimeDxe/QemuFlash.c:14:10: fatal error: Library/VmgExitLib.h: No such file or directory
#include <Library/VmgExitLib.h>
^~~~~~~~~~~~~~~~~~~~~~
...
build.py...
: error F002: Failed to build module
OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf [X64, GCC5, DEBUG]
Another one is:
/tmp/cc7KG5f7.ltrans0.ltrans.o: In function `CommonExceptionHandlerWorker':
UefiCpuPkg/Library/CpuExceptionHandlerLib/PeiDxeSmmCpuException.c:95: undefined reference to `DoVcException'
It seems to be expected as e.g. UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
does not include any of the implementations of DoVcException
. So is SMM ignored in this submission?
Hi,
when running the command
nice build -v --cmd-len=64436 -DDEBUG_ON_SERIAL_PORT=TRUE -n 32 -t GCC5 -a X64 -p OvmfPkg/OvmfPkgX64.dsc
I get the following error:
[OUTPUT SKIPPED]
Building ... /home/host/AMDSEV/ovmf/OvmfPkg/Library/BlobVerifierLibNull/BlobVerifierLibNull.inf [X64]
make: Nothing to be done for 'tbuild'.
Building ... /home/host/AMDSEV/ovmf/UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf [X64]
"nasm" -I/home/host/AMDSEV/ovmf/MdePkg/Library/BaseLib/X64/ -I/home/host/AMDSEV/ovmf/MdePkg/Library/BaseLib/X64/ -I/home/host/AMDSEV/ovmf/MdePkg/Library/BaseLib/ -I/home/host/AMDSEV/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseLib/BaseLib/DEBUG/ -I/home/host/AMDSEV/ovmf/MdePkg/ -I/home/host/AMDSEV/ovmf/MdePkg/Include/ -I/home/host/AMDSEV/ovmf/MdePkg/Test/UnitTest/Include/ -I/home/host/AMDSEV/ovmf/MdePkg/Include/X64/ -f elf64 -o /home/host/AMDSEV/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseLib/BaseLib/OUTPUT/X64/LongJump.obj /home/host/AMDSEV/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseLib/BaseLib/OUTPUT/X64/LongJump.iii
/home/host/AMDSEV/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseLib/BaseLib/OUTPUT/X64/LongJump.iii:44: error: parser: instruction expected
/home/host/AMDSEV/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseLib/BaseLib/OUTPUT/X64/LongJump.iii:49: error: parser: instruction expected
make: *** [GNUmakefile:782: /home/host/AMDSEV/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseLib/BaseLib/OUTPUT/X64/LongJump.obj] Error 1
build.py...
: error 7000: Failed to execute command
make tbuild [/home/host/AMDSEV/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseLib/BaseLib]
build.py...
: error F002: Failed to build module
/home/host/AMDSEV/ovmf/MdePkg/Library/BaseLib/BaseLib.inf [X64, GCC5, DEBUG]
Any clues what might cause this?
Hello!
I am trying to compile the components for ses-es using the build script, however I get the same error every time :
...nice build -q --cmd-len=64436 -DDEBUG_ON_SERIAL_PORT=TRUE -n 32 -t GCC5 -a X64 -p OvmfPkg/OvmfPkgX64.dsc
Build environment: Linux-4.15.0-126-generic-x86_64-with-Ubuntu-18.04-bionic
Build start time: 20:55:58, Dec.07 2020
WORKSPACE = /root/AMDSEV/build/ovmf
EDK_TOOLS_PATH = /root/AMDSEV/build/ovmf/BaseTools
CONF_PATH = /root/AMDSEV/build/ovmf/Conf
PYTHON_COMMAND = /usr/bin/python3.6
Processing meta-data ....... done!
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/XenPlatformLib/XenPlatformLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/QemuFwCfgS3Lib/DxeQemuFwCfgS3LibFwCfg.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/DxeHobLib/DxeHobLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgDxeLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/UefiLib/UefiLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/UefiDevicePathLibDevicePathProtocol/UefiDevicePathLibDevicePathProtocol.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BaseCpuLib/BaseCpuLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf [X64]
Building ... /root/AMDSEV/build/ovmf/PcAtChipsetPkg/Library/SerialIoLib/SerialIoLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BasePrintLib/BasePrintLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/DxePcdLib/DxePcdLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BaseLib/BaseLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/X86QemuLoadImageLib/X86QemuLoadImageLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/PlatformBmPrintScLib/PlatformBmPrintScLib.inf [X64]
Building ... /root/AMDSEV/build/ovmf/OvmfPkg/Library/Tcg2PhysicalPresenceLibNull/DxeTcg2PhysicalPresenceLib.inf [X64]
build.py...
: error 7000: Failed to execute command
make tbuild [/root/AMDSEV/build/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseCpuLib/BaseCpuLib]
build.py...
: error 7000: Failed to execute command
make tbuild [/root/AMDSEV/build/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev]
build.py...
: error 7000: Failed to execute command
make tbuild [/root/AMDSEV/build/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr]
build.py...
: error 7000: Failed to execute command
make tbuild [/root/AMDSEV/build/ovmf/Build/OvmfX64/DEBUG_GCC5/X64/MdePkg/Library/BaseLib/BaseLib]
build.py...
: error F002: Failed to build module
/root/AMDSEV/build/ovmf/MdePkg/Library/BaseCpuLib/BaseCpuLib.inf [X64, GCC5, DEBUG]
ERROR: nice build -q --cmd-len=64436 -DDEBUG_ON_SERIAL_PORT=TRUE -n 32 -t GCC5 -a X64 -p OvmfPkg/OvmfPkgX64.dsc
root@unibox:~/AMDSEV/build#
I tried differnet OSes with the same result:
Ubuntu 18.04, Debian 10, Centos 7, Centos 8.
I guess that the problem is somewhere in the code of other repositories (probably the code was updated there) used for the build, but where exactly I could not figure out even with Google. Could you please help with this?
Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.