Bug 1869102

Summary: ipxe-roms-qemu-20190125-7 breaks UEFI-based VMs (won't boot)
Product: [Fedora] Fedora Reporter: Antoine <abj0000>
Component: ipxeAssignee: Fedora Virtualization Maintainers <virt-maint>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 33CC: berrange, bugzilla, crobinso, gmarr, kraxel, lersek, pbonzini, philmd, robatino, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard: AcceptedBlocker
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-08-18 16:37:39 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:
Bug Depends On:    
Bug Blocks: 1766775    

Description Antoine 2020-08-16 21:27:26 UTC
Description of problem:
With that preview package (from the virtualization preview repository), virtual machines won't boot up if they rely on the edk2-ovmf UEFI and have at least 1 network interface.

Version-Release number of selected component (if applicable):
ipxe-roms-qemu-20190125-7.git36a4c85f.fc32.noarch

How reproducible:
Always

Steps to Reproduce:
1. Start a UEFI-based virtual machine that has at least 1 network interface

Actual results:
Virtual machine hangs before reaching the display initialization (probably at the PXE stage).

Expected results:
Virtual machine should be able to boot up.

Comment 1 Antoine 2020-08-16 21:32:08 UTC
By the way, for people facing this, downgrading to ipxe-roms-qemu to 20190125-4.git36a4c85f.fc32.noarch solves it.
Downgrading other packages (qemu, edk2, libvirt) doesn't.

Comment 2 Chris Murphy 2020-08-17 15:12:13 UTC
*** Bug 1869045 has been marked as a duplicate of this bug. ***

Comment 3 Chris Murphy 2020-08-17 15:42:06 UTC
Beta criterion:
"The release must be able host virtual guest instances of the same release. "

Works with BIOS VM, doesn't work with UEFI VM; but pretty sure we cover both under the criterion even though I can find a reference.

Comment 4 Daniel Berrangé 2020-08-17 15:52:35 UTC
20190125-7.git36a4c85f  introduced support for HTTPS for bug 1820836.

It merely defined DOWNLOAD_PROTO_HTTPS.

I'm surprised existing stuff breaks, but I wonder if this causes a ROM size problem by enabling extra code ?

Comment 5 Cole Robinson 2020-08-17 16:49:31 UTC
(In reply to Daniel Berrangé from comment #4)
> 20190125-7.git36a4c85f  introduced support for HTTPS for bug 1820836.
> 
> It merely defined DOWNLOAD_PROTO_HTTPS.
> 
> I'm surprised existing stuff breaks, but I wonder if this causes a ROM size
> problem by enabling extra code ?

I also disabled some edk2 ia32 bits to make the rom size fit. Maybe that
had some wider impact. Haven't poked at it yet

Comment 6 Cole Robinson 2020-08-17 21:33:20 UTC
I reverted the HTTPS change in ipxe-20190125-8.git36a4c85f.fc33 and coonfirmed it fixes the issue. I'll drop more info in the original HTTPS bug 1820836

Comment 7 Geoffrey Marr 2020-08-17 23:37:03 UTC
Discussed during the 2020-08-17 blocker review meeting: [0]

The decision to classify this bug as an "AcceptedBlocker" was made as it violates the following criterion:

"The release must be able host virtual guest instances of the same release" (when the virtual guest instance is using UEFI).

[0] https://meetbot.fedoraproject.org/fedora-blocker-review/2020-08-17/f33-blocker-review.2020-08-17-16.11.txt

Comment 8 Laszlo Ersek 2020-08-18 08:35:29 UTC
(In reply to Daniel Berrangé from comment #4)
> 20190125-7.git36a4c85f  introduced support for HTTPS for bug 1820836.
> 
> It merely defined DOWNLOAD_PROTO_HTTPS.

DOWNLOAD_PROTO_HTTPS exposes an upstream iPXE regression from commit d8c500b7945e ("[efi] Drop to TPL_APPLICATION when gathering entropy", 2018-03-12). It's been fixed in commit 2ae5d4338661 ("[efi] Raise TPL during driver entry point", 2020-06-30) in the meantime. See <https://bugs.launchpad.net/ipxe/+bug/1882671> for more details.

Comment 9 Cole Robinson 2020-08-18 16:37:39 UTC
Thanks for the info Laszlo. We can track re-enabling HTTPS in the original bug.

ipxe-20190125-8.git36a4c85f.fc33 no longer has this problem because HTTPS was disabled, so closing this bug against that version

FWIW though this was filed against f32, the broken package was only in f33+ and virt-preview copr repo