Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Description of problem:
When given
<domain>
..
<os>
..
<bios useserial='yes'/>
...
</os>
..
</domain>
Libvirt will tell QEMU to use '-device sga', to make the BIOS emit boot messages on the serial console.
Bug 2003040 is proposing removal of the sga device and this will break libguestfs.
We need to convert libvirt to use '-M graphics=off' to avoid the regression in libguestfs.
Merged upstream for 7.8.0 release as
69254cafa0899cb30f1614ca647a97b3de5ff414 qemu: stop probing for '-device sga' support
40dfef297a4a03be11a82ba6911bb08905504690 qemu: switch to use -M graphics=off instead of -device sga
58dfbca51da64229dcc18878c1194b46677b5075 qemu: tweak error message to be more general purpose
c82726a46087d5422104fb9dc15756444735f285 qemu: prevent use of <bios useserial='yes'> on non-x86 arches
Testing shows that it is possible to live migrate between a guest using "-device sga" and a guest using "-M graphics=off" in both directions, without any difference in behaviour nor any migration compatibility problems.
Version-Release number of selected component (if applicable):
7.7.0
How reproducible:
Always
Steps to Reproduce:
1. Add <bios useserial='yes'/> and <bootmenu enable='yes' timeout='5000'/> in the <os> element of a guest using SeaBIOS
2. virsh start --paused $GUEST
3. virsh console $GUEST
4. In a separate terminal run 'virsh resume $GUEST'
Actual results:
N/a
Expected results:
In the original terminal there should be a message on the text console from seabios offering to show the menu menu choices
Comment 1Richard W.M. Jones
2021-09-13 09:34:30 UTC
*** Bug 2002392 has been marked as a duplicate of this bug. ***
Comment 2Klaus Heinrich Kiwi
2021-10-07 20:02:23 UTC
*** Bug 2007257 has been marked as a duplicate of this bug. ***
Test Version:
libvirt-7.8.0-1.el9.x86_64
qemu-kvm-6.1.0-5.el9.x86_64
Test Steps:
1. Prepare a seabios guest with the following os xml:
# virsh dumpxml lmn | grep /os -B5
<os>
<type arch='x86_64' machine='pc-q35-rhel8.5.0'>hvm</type>
<boot dev='hd'/>
<bootmenu enable='yes' timeout='5000'/>
<bios useserial='yes'/>
</os>
2. Start and paused the guest; then check the concole:
# virsh start lmn --paused
Domain 'lmn' started
# virsh console lmn
Connected to domain 'lmn'
Escape character is ^] (Ctrl + ])
3. Check the qemu command:
# ps aux | grep lmn | grep graphics=off
...
-machine pc-q35-rhel8.5.0,accel=kvm,usb=off,dump-guest-core=off,memory-backend=pc.ram,graphics=off
...
3. In another terminal, resume the guest.
# virsh resume lmn
Domain 'lmn' resumed
4. Check the console in the first terminal.
SeaBIOS (version 1.14.0-7.el9)
Machine UUID b91e01f9-58c7-4266-8868-ca8d7ec76d7c
iPXE (http://ipxe.org) 01:00.0 CA00 PCI2.10 PnP PMM+7FF8D110+7FECD110 CA00
Press ESC for boot menu.
Select boot device:
1. Virtio disk PCI:04:00.0
2. Legacy option rom
3. iPXE (PCI 01:00.0)
We can see the message on the text console from seabios offering to show the menu choices
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory (new packages: libvirt), and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHBA-2022:2390
Description of problem: When given <domain> .. <os> .. <bios useserial='yes'/> ... </os> .. </domain> Libvirt will tell QEMU to use '-device sga', to make the BIOS emit boot messages on the serial console. Bug 2003040 is proposing removal of the sga device and this will break libguestfs. We need to convert libvirt to use '-M graphics=off' to avoid the regression in libguestfs. Merged upstream for 7.8.0 release as 69254cafa0899cb30f1614ca647a97b3de5ff414 qemu: stop probing for '-device sga' support 40dfef297a4a03be11a82ba6911bb08905504690 qemu: switch to use -M graphics=off instead of -device sga 58dfbca51da64229dcc18878c1194b46677b5075 qemu: tweak error message to be more general purpose c82726a46087d5422104fb9dc15756444735f285 qemu: prevent use of <bios useserial='yes'> on non-x86 arches Testing shows that it is possible to live migrate between a guest using "-device sga" and a guest using "-M graphics=off" in both directions, without any difference in behaviour nor any migration compatibility problems. Version-Release number of selected component (if applicable): 7.7.0 How reproducible: Always Steps to Reproduce: 1. Add <bios useserial='yes'/> and <bootmenu enable='yes' timeout='5000'/> in the <os> element of a guest using SeaBIOS 2. virsh start --paused $GUEST 3. virsh console $GUEST 4. In a separate terminal run 'virsh resume $GUEST' Actual results: N/a Expected results: In the original terminal there should be a message on the text console from seabios offering to show the menu menu choices