Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Mar 2019 14:00:21 -0600
From:      Rebecca Cran <rebecca@bluestop.org>
To:        D Scott Phillips <d.scott.phillips@intel.com>, Larry Rosenman <ler@lerctr.org>
Cc:        freebsd-virtualization@freebsd.org, owner-freebsd-virtualization@freebsd.org
Subject:   Re: Updating uefi-edk2-bhyve
Message-ID:  <8c63eb87-e3b8-2365-2eaf-a6e36424407c@bluestop.org>
In-Reply-To: <86k1gqanx8.fsf@intel.com>
References:  <86muln68ld.fsf@intel.com> <1fe3ca3f-be70-99db-e7c0-35c9194c97e4@bluestop.org> <7e84fd01c3f46268c26f9bab8b9fb9bc@lerctr.org> <33fcf111-fe00-4ec7-8a2f-7c53246d756f@Spark> <86k1gqanx8.fsf@intel.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 3/22/19 10:12 AM, D Scott Phillips wrote:

>
> You're seeing this firmware triple fault in the DEBUG build of this new
> firmware? It seems to be functioning properly for me. Do you get any
> serial output before the fault?


I do get quite a bit of output before the fault. I'm running 13-CURRENT 
(on an Skylake PC), built today, so there may be some new issues that 
aren't in a release.

I'm building OVMF with "build -p OvmfPkg/OvmfPkgX64.dsc -a X64 -b DEBUG 
-DDEBUG_ON_SERIAL_PORT=TRUE -t GCC5"

root@cube:# bhyve -AHP -s 0:0,hostbridge -s 31:0,lpc -c 4 -m 4G -s 
29,fbuf,tcp=0.0.0.0:5900,w=800,h=600 -l bootrom,OVMF_CODE.fd -l 
com1,stdio guest
fbuf frame buffer base: 0x941e00000 [sz 16777216]
SecCoreStartupWithStack(0xFFFCC000, 0x820000)
SEC: Normal boot
DecompressMemFvs: OutputBuffer@A00000+0xBE0090 
ScratchBuffer@1600000+0x10000 PcdOvmfDecompressionScratchEnd=0x1610000
Register PPI Notify: DCD0BE23-9586-40F4-B643-06522CED4EDE
Install PPI: 8C8CE578-8A3D-4F1C-9935-896185C32DD3
Install PPI: 5473C07A-3DCB-4DCA-BD6F-1E9689E7349A
The 0th FV start address is 0x00000820000, size is 0x000E0000, handle is 
0x820000
Register PPI Notify: 49EDB1C1-BF21-4761-BB12-EB0031AABB39
Register PPI Notify: EA7CA24B-DED5-4DAD-A389-BF827E8F9B38
Install PPI: B9E0ABFE-5979-4914-977F-6DEE78C278A6
Install PPI: DBE23AA9-A345-4B97-85B6-B226F1617389
DiscoverPeimsAndOrderWithApriori(): Found 0x6 PEI FFS files in the 0th FV
Evaluate PEI DEPEX for FFS(9B3ADA4F-AE56-4C24-8DEA-F03B7558AE50)
   RESULT = TRUE (Apriori)
Loading PEIM 9B3ADA4F-AE56-4C24-8DEA-F03B7558AE50
Loading PEIM at 0x0000082C340 EntryPoint=0x0000082F812 PcdPeim.efi
Install PPI: 06E81C58-4AD7-44BC-8390-F10265F72480
Install PPI: 01F34D25-4DE2-23AD-3FF3-36353FF323F1
Install PPI: 4D8B155B-C059-4C8F-8926-06FD4331DB8A
Install PPI: A60C6B59-E459-425D-9C69-0BCC9CB27D81
Register PPI Notify: 605EA650-C65C-42E1-BA80-91A52AB618C6
Evaluate PEI DEPEX for FFS(A3610442-E69F-4DF3-82CA-2360C4031A23)
   TRUE
   END
   RESULT = TRUE
Loading PEIM A3610442-E69F-4DF3-82CA-2360C4031A23
Loading PEIM at 0x00000831140 EntryPoint=0x00000832848 
ReportStatusCodeRouterPei.efi
Install PPI: 0065D394-9951-4144-82A3-0AFC8579C251
Install PPI: 229832D3-7A30-4B36-B827-F40CB7D45436
Evaluate PEI DEPEX for FFS(9D225237-FA01-464C-A949-BAABC02D31D0)
   PUSH GUID(0065D394-9951-4144-82A3-0AFC8579C251) = TRUE
   END
   RESULT = TRUE
Loading PEIM 9D225237-FA01-464C-A949-BAABC02D31D0
Loading PEIM at 0x000008335C0 EntryPoint=0x00000834B6F 
StatusCodeHandlerPei.efi
Evaluate PEI DEPEX for FFS(222C386D-5ABC-4FB4-B124-FBB82488ACF4)
   PUSH GUID(01F34D25-4DE2-23AD-3FF3-36353FF323F1) = TRUE
   END
   RESULT = TRUE
Loading PEIM 222C386D-5ABC-4FB4-B124-FBB82488ACF4
Loading PEIM at 0x00000835BC0 EntryPoint=0x00000835E00 PlatformPei.efi
Platform PEIM Loaded
CMOS:
00: 50 00 47 00 13 00 06 22 03 19 20 02 00 80 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 20 00 00 BF 00 00 00 00 00 00 00 00 00 00
40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
50: 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 00
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Install PPI: 7408D748-FC8C-4EE6-9288-C4BEC092A410
GetFirstNonAddress: Pci64Base=0x800000000 Pci64Size=0x800000000
PublishPeiMemory: mPhysMemAddressWidth=36 PeiMemoryCap=65800 KB
PeiInstallPeiMemory MemoryBegin 0xBBFBE000, MemoryLength 0x4042000
QemuInitializeRam called
Reserved variable store memory: 0xBFF7C000; size: 528kb
Platform PEI Firmware Volume Initialization
Install PPI: 49EDB1C1-BF21-4761-BB12-EB0031AABB39
Notify: PPI Guid: 49EDB1C1-BF21-4761-BB12-EB0031AABB39, Peim notify 
entry point: 8292C1
The 1th FV start address is 0x00000900000, size is 0x00B00000, handle is 
0x900000
Register PPI Notify: EE16160A-E8BE-47A6-820A-C6900DB0250A
Temp Stack : BaseAddress=0x818000 Length=0x8000
Temp Heap  : BaseAddress=0x810000 Length=0x8000
Total temporary memory:    65536 bytes.
   temporary memory stack ever used:       5096 bytes.
   temporary memory heap used for HobList: 6328 bytes.
   temporary memory heap occupied by memory pages: 0 bytes.
Memory Allocation 0x00000004 0x806000 - 0x806FFF
Memory Allocation 0x00000006 0xBFF7C000 - 0xBFFFFFFF
Memory Allocation 0x00000004 0x820000 - 0x8FFFFF
Memory Allocation 0x00000004 0x900000 - 0x13FFFFF
Old Stack size 32768, New stack size 131072
Stack Hob: BaseAddress=0xBBFBE000 Length=0x20000
Heap Offset = 0xBB7CE000 Stack Offset = 0xBB7BE000
TemporaryRamMigration(0x810000, 0xBBFD6000, 0x10000)
vm exit[0]
reason          VMX
rip             0x0000000000827359
inst_length     5
status          0
exit_reason     2 (Triple fault)
qualification    0x0000000000000000
inst_type               0
inst_error              0
Abort


On the build problem side, if I run "build -p OvmfPkg/OvmfPkgX64.dsc -a 
X64 -t GCC48 -b RELEASE" then I get an error (that I don't get if I 
replace GCC48 with GCC5):

/usr/local/bin/ld: warning: cannot find entry symbol _ModuleEntryPoint; 
not setting start address
/usr/local/bin/ld: warning: cannot find entry symbol _ModuleEntryPoint; 
not setting start address
"objcopy" 
/home/bcran/workspace/bhyveedk2/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AmdSevDxe/AmdSevDxe/DEBUG/AmdSevDxe.dll
"objcopy" 
/home/bcran/workspace/bhyveedk2/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb/DEBUG/EmuVariableFvbRuntimeDxe.dll
objcopy: error: the input file 
'/home/bcran/workspace/bhyveedk2/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb/DEBUG/EmuVariableFvbRuntimeDxe.dll' 
has no sections
objcopy: error: the input file 
'/home/bcran/workspace/bhyveedk2/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AmdSevDxe/AmdSevDxe/DEBUG/AmdSevDxe.dll' 
has no sections
make: *** [GNUmakefile:383: 
/home/bcran/workspace/bhyveedk2/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AmdSevDxe/AmdSevDxe/DEBUG/AmdSevDxe.dll] 
Error 1

-- 

Rebecca Cran





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8c63eb87-e3b8-2365-2eaf-a6e36424407c>