Bug 1651905

Summary: guest can not start because ASSERT_EFI_ERROR when using edk2 with EPT=0
Product: Red Hat Enterprise Linux 8 Reporter: Michael <choma>
Component: edk2Assignee: Ademar Reis <areis>
Status: CLOSED DUPLICATE QA Contact: FuXiangChun <xfu>
Severity: medium Docs Contact:
Priority: medium    
Version: 8.0CC: berrange, crobinso, kraxel, lersek, pbonzini
Target Milestone: rc   
Target Release: 8.0   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-11-21 18:45:43 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
edk2-guest-boot-log none

Description Michael 2018-11-21 07:27:47 UTC
Created attachment 1507564 [details]
edk2-guest-boot-log

Description of problem:
Guest fail to start when using edk2 in RHEL8 host. Similar problem was happened before; however, this bug might be edk2 problem. The error in the log as follow:

>Bds Arch Protocol not present!!
>Variable Arch Protocol not present!!
>Variable Write Arch Protocol not present!!
>Capsule Arch Protocol not present!!
>Monotonic Counter Arch Protocol not present!!
>Real Time Clock Arch Protocol not present!!
>
>Driver 93B80004-9FB3-11D4-9A3A-0090273FC14D was discovered but not loaded!!
>.
>.
>.
>Driver 9F7DCADE-11EA-448A-A46F-76E003657DD1 was discovered but not loaded!!
>
>ASSERT_EFI_ERROR (Status = Not Found)
>ASSERT /builddir/build/BUILD/edk2-ee3198e672e2/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c(541): !EFI_ERROR (Status)


Version-Release number of selected component (if applicable):
kernel:4.18.0-40.el8.x86_64
qemu-kvm-3.0.0-2.module+el8+2208+e41b12e0.x86_64
edk2-ovmf-20180508gitee3198e672e2-7.el8.noarch


How reproducible:
100%

Steps to Reproduce:
1.Disable EPT parameter first.
#modprobe -r kvm_intel/amd
#modprobe kvm-intel ept=N

2.check the EPT parameter:
#cat /sys/module/kvm_intel/parameters/ept
N

3.Boot the guest:
/usr/libexec/qemu-kvm -enable-kvm -M q35 -cpu SandyBridge \
-nodefaults -smp 4,cores=2,threads=2,sockets=1 -m 4G -name rhel7.6 \
-global driver=cfi.pflash01,property=secure,value=on  \

-drive file=/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd,if=pflash,format=raw,unit=0,readonly=on \

-drive file=/tmp/rhel8-secboot/OVMF_VARS.fd,if=pflash,format=raw,unit=1,readonly=off \

-debugcon file:/home/ovmf-rhel8.log -global isa-debugcon.iobase=0x402 \
-drive file=/usr/share/edk2/ovmf/UefiShell.iso,if=none,cache=none,snapshot=off,aio=native,media=cdrom,id=cdrom1 -device ahci,id=ahci0 \
-device ide-cd,drive=cdrom1,id=ide-cd1,bus=ahci0.1,bootindex=2 \

-vnc :1 -vga qxl -monitor stdio \
-drive file=rhel8-OVMF.qcow2,if=none,id=guest-img,format=qcow2,werror=stop,rerror=stop \
-device virtio-blk-pci,drive=guest-img,id=os-disk,bootindex=1 \

-netdev tap,id=hostnet0,vhost=on -device virtio-net-pci,netdev=hostnet0,id=net0,mac=00:84:ed:01:00:09 \
-serial unix:/tmp/console,server,nowait -boot menu=on,splash-time=5000

Actual results:
Guest can not start. 

Expected results:
Guest boot successfully and work well. 


Additional info:
The full log will be in attachment. Reference Bug:
Bug 1348092
Bug 1615704

Comment 1 Laszlo Ersek 2018-11-21 18:45:43 UTC
Arrrgh, I actually closed this BZ this morning, with due justification of
course. My internet connection was lost in the process however. I assumed
the BZ update succeeded and only the BZ refresh on my end failed.
Apparently, that wasn't the case. So here's another reason why one should
*never* edit longer than two line comments in Firefox. How *incredibly*
annoying.

So, this is a dupe of 1615704. The symptoms are a bit different, but it's
the same issue.

From the log:

> SmmAccessPeiEntryPoint: SMRAM map follows, 2 entries
>    PhysicalStart(0x)     PhysicalSize(0x)         CpuStart(0x)      RegionState(0x)
>             7F000000                 1000             7F000000                   1A
>             7F001000               FFF000             7F001000                    A

This proves we use the default 16MB of SMRAM / T-seg. (Also indicated by the
QEMU command line in the report.) But then:

> SMM IPL opened SMRAM window
> SMM IPL could not find a large enough SMRAM region to load SMM Core
> SMM IPL closed SMRAM window
> Error: Image at 0007EBA2000 start failed: Unsupported

which can be explained by nothing other than the SMM emulation failure. And,
it goes all downhill from this point; no further errors in the log merit
investigation.

*** This bug has been marked as a duplicate of bug 1615704 ***