Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UEFI enabled HVMs hang on "Guest has not initialized the display (yet)" #8625

Open
xunillen2 opened this issue Oct 18, 2023 · 4 comments
Open
Labels
affects-4.2 This issue affects Qubes OS 4.2. C: other diagnosed Technical diagnosis has been performed (see issue comments). P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. regression A bug in which a supported feature that worked in a prior Qubes OS release has stopped working. T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists.

Comments

@xunillen2
Copy link

Qubes OS release

Fresh install of 4.2-RC4

Brief summary

After upgrading to 4.2, UEFI enabled HVMs won't boot anymore and will just hang on Guest has not initialized the display (yet)

Steps to reproduce

  • Create an HVM qube
  • Set uefi domain feature to 1 via qvm-features <vm-name> uefi 1
  • Start HVM qube
  • It hangs on this:

failed

Expected behavior

HVM with UEFI boot enabled boots.

Actual behavior

It hangs while displaying the message Guest has not initialized the display (yet)

@xunillen2 xunillen2 added P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists. labels Oct 18, 2023
@xunillen2
Copy link
Author

xunillen2 commented Oct 18, 2023

What I think is happening (And I might be wrong).
It looks like there were changes related to edk2 packages and how things work. Starting with edk2-stable202108, they removed Xen support and moved it to the OvmfXen, and it looks like ovmf binaries provided in dom0 lack Xen support (not from edk2-ovmf-xen)...

So as for temporary solution, it is possible to get ovmf.bin firmware from R4.1 installation that still has Xen support (located at /usr/libexec/xen/boot/ovmf.bin) and place it in /usr/libexec/xen/boot/ovmf.bin in new R4.2 installation. With that, HVMs with uefi boot enabled work.

references:
https://bugzilla.redhat.com/show_bug.cgi?id=2170730
https://bugzilla.tianocore.org/show_bug.cgi?id=2122

@andrewdavidwong andrewdavidwong added C: gui-virtualization needs diagnosis Requires technical diagnosis from developer. Replace with "diagnosed" or remove if otherwise closed. affects-4.2 This issue affects Qubes OS 4.2. labels Oct 18, 2023
@DemiMarie DemiMarie added diagnosed Technical diagnosis has been performed (see issue comments). regression A bug in which a supported feature that worked in a prior Qubes OS release has stopped working. and removed C: gui-virtualization needs diagnosis Requires technical diagnosis from developer. Replace with "diagnosed" or remove if otherwise closed. labels Oct 18, 2023
@lxp
Copy link

lxp commented Dec 25, 2023

Thank you, for mentioning the workaround. I had the same problem, fetched the R4.1 ovmf.bin from https://yum.qubes-os.org/r4.1/current/host/fc32/rpm/xen-runtime-4.14.6-4.fc32.x86_64.rpm and it works for me too.

Update: My HVM/UEFI qube never had a PCI device attached and it still got stuck with ovmf.bin from R4.2.

@apparatius
Copy link

It works for HVM without PCI devices attached to it.
But if I attach any PCI device to HVM with UEFI enabled then it'll be stuck at Guest has not initialized the display (yet) again.

@xunillen2
Copy link
Author

Yeah, this solution will only enable you to boot HVMs with uefi boot enabled. But soon as you add PCI devices to that HVM, it will get stuck again.

I'll try to see whats wrong today or tomorrow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
affects-4.2 This issue affects Qubes OS 4.2. C: other diagnosed Technical diagnosis has been performed (see issue comments). P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. regression A bug in which a supported feature that worked in a prior Qubes OS release has stopped working. T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists.
Projects
None yet
Development

No branches or pull requests

5 participants