-
Bug
-
Resolution: Unresolved
-
Major
-
rhel-9.4
-
edk2-20240524-9.el10
-
No
-
Moderate
-
rhel-sst-virtualization
-
ssg_virtualization
-
3
-
False
-
-
None
-
Red Hat Enterprise Linux
-
None
-
Pass
-
None
-
-
aarch64
-
None
What were you trying to do that didn't work?
Booting the VM for the first time (only the first time) makes it hang, as the firmware refuses to run on a resolution lower than EFI spec mandates
GopNativeResolution: #0: 507x510 ... GraphicsConsole video resolution 507 x 510 ASSERT [GraphicsConsoleDxe] /builddir/build/BUILD/edk2-8736b8fdca/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.c(267): (MaxColumns >= 80) && (MaxRows >= 25)
Resettting the VM makes the problem go away, its only on first boot after VM creation, and not always.
Please provide the package NVR for which bug is seen:
edk2-aarch64-20231122-6.el9.noarch qemu-kvm-8.2.0-11.el9_4.3.aarch64
How reproducible:
Never in our labs, only on customer site.
Steps to reproduce:
On customer setup, the details are potentially irrelevant as it also reproduces via cockpit-machines:
# virt-install --connect qemu:///system --quiet --os-variant rhel9.4 --memory 8192 --name myvm --wait -1 --disk size=16,format=qcow2 --graphics vnc,listen=127.0.0.1 --print-xml=1 > /tmp/myvm.xml # virsh --connect qemu:///system define /tmp/myvm.xml # virsh --connect qemu:///system dumpxml myvm | grep -w mac <mac address='52:54:00:00:00:00'/> # virt-xml -c qemu:///system myvm --edit mac=52:54:00:00:00:00 --network mac=52:54:00:00:00:00,type=bridge,source=bridge0,model=virtio, Domain 'myvm' defined successfully. # virt-install --debug --connect qemu:///system --quiet --os-variant rhel9.4 --reinstall myvm --wait -1 --noautoconsole --cdrom /tmp/rhel-9.4-aarch64-boot.iso
Expected results
The VM boots
Actual results
The VM is stuck on that ASSERT on first boot.
There is no resolution set in the qemu-kvm command line for the virtio-gpu, nor in the libvirt XML.
After some investigation, I found that the resolution may be saved in some Platform Config option saved as EFI VAR somewhere. But we have double checked that:
- The system disk is empty, no EFI vars set there
- The RHEL 9.4 boot ISO also has nothing
- The NVRAM VARS is also the default, there are no resolution settings there.
- The firmware logs don't indicate it loading any config, it seems to just read that incorrect resolution from the virtio-gpu, but then working after a reset is weird.
- It is always 507x510, so its apparently not some random garbage that is read.
- qemu-kvm virtio-gpu device is created with the default resolution and the device properties look correct on the same run the assert is hit
# virsh qemu-monitor-command myvm --pretty '{"execute": "device-list-properties", "arguments": {"typename": "virtio-gpu-pci"}}' | egrep 'xres|yres' -E1 "default-value": 800, "name": "yres", "type": "uint32" -- "default-value": 1280, "name": "xres", "type": "uint32" # virsh qemu-monitor-command myvm --pretty '{"execute": "qom-get", "arguments": { "path": "/machine/peripheral/video0", "property" : "xres" }}' { "return": 1280, "id": "libvirt-144353" } # virsh qemu-monitor-command myvm --pretty '{"execute": "qom-get", "arguments": { "path": "/machine/peripheral/video0", "property" : "yres" }}' { "return": 800, "id": "libvirt-144360" }
- clones
-
RHEL-56248 507x510 display resolution should not crash the firmware [edk2,rhel-9.6]
- Release Pending
- links to
-
RHSA-2024:139854 edk2 update