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.
Bug 1753644 - Enable bochs-display for UEFI guests (virt-install)
Summary: Enable bochs-display for UEFI guests (virt-install)
Keywords:
Status: CLOSED DEFERRED
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: virt-manager
Version: 8.2
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: rc
: 8.2
Assignee: Fabiano Fidêncio
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On: 1707118 1707119 1724098 1754394 1754396
Blocks: 1753634 1753637 1753641 1753670
TreeView+ depends on / blocked
 
Reported: 2019-09-19 14:04 UTC by Fabiano Fidêncio
Modified: 2020-10-12 03:51 UTC (History)
17 users (show)

Fixed In Version: virt-manager-2.2.1-3.el8
Doc Type: Enhancement
Doc Text:
Clone Of: 1707119
Environment:
Last Closed: 2019-12-10 14:18:29 UTC
Type: Feature Request
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Fabiano Fidêncio 2019-09-19 14:04:04 UTC
+++ This bug was initially created as a clone of Bug #1707119 +++

+++ This bug was initially created as a clone of Bug #1707118 +++

The bochs-display device is a simple display device which is similar to VGA but without legacy emulation. It should be used if the guest is running with UEFI.

This changelog from this upstream commit in QEMU has more details:

commit 765c94290863eef1fc4a67819d452cc13b7854a1
Author: Gerd Hoffmann <kraxel>
Date:   Tue May 22 18:50:55 2018 +0200

    hw/display: add new bochs-display device
    
    After writing up the virtual mdev device emulating a display supporting
    the bochs vbe dispi interface (mbochs.ko) and seeing how simple it
    actually is I've figured that would be useful for qemu too.
    
    So, here it is, -device bochs-display.  It is basically -device VGA
    without legacy vga emulation.  PCI bar 0 is the framebuffer, PCI bar 2
    is mmio with the registers.  The vga registers are simply not there
    though, neither in the legacy ioport location nor in the mmio bar.
    Consequently it is PCI class DISPLAY_OTHER not DISPLAY_VGA.
    
    So there is no text mode emulation, no weird video modes (planar,
    256color palette), no memory window at 0xa0000.  Just a linear
    framebuffer in the pci memory bar.  And the amount of code to emulate
    this (and therefore the attack surface) is an order of magnitude smaller
    when compared to vga emulation.
    
    Compatibility wise it works with OVMF (latest git master).
    The bochs-drm.ko linux kernel module can handle it just fine too.
    So UEFI guests should not see any functional difference to VGA.

--- Additional comment from Jonathon Jongsma on 2019-08-23 20:14:31 UTC ---

Just to clarify, is this simply a matter of changing the default video device for domains that are configured for UEFI when no other video device is specified? Or is there something else needed here?

--- Additional comment from Ademar Reis on 2019-08-23 22:19:12 UTC ---

(In reply to Jonathon Jongsma from comment #1)
> Just to clarify, is this simply a matter of changing the default video
> device for domains that are configured for UEFI when no other video device
> is specified? Or is there something else needed here?

That's my understanding. Gerd, please confirm.

--- Additional comment from Gerd Hoffmann on 2019-08-26 07:06:34 UTC ---

(In reply to Jonathon Jongsma from comment #1)
> Just to clarify, is this simply a matter of changing the default video
> device for domains that are configured for UEFI when no other video device
> is specified? Or is there something else needed here?

That is correct.

--- Additional comment from Jonathon Jongsma on 2019-08-30 14:34:38 UTC ---

I proposed a change for libvirt, but it was decided that this is really a better decision for a higher-level management app in conjunction with libosinfo. Re-assigning this bug to osinfo for now.

Thread: https://www.redhat.com/archives/libvir-list/2019-August/msg01300.html

--- Additional comment from Fabiano Fidêncio on 2019-09-17 11:08:23 UTC ---

So, what we've decided to do on libosinfo/osinfo-db side is just track whether the system supports UEFI or not. Then, management applications will have to do the logic on selecting "bochs display" whenever it makes sense.

----------------------------------------------------------------------------
I've removed comments which were not relevant for implementing this feature.
----------------------------------------------------------------------------

Comment 1 Gerd Hoffmann 2019-09-27 08:03:11 UTC
Some vga & display device background:
https://www.kraxel.org/blog/2019/09/display-devices-in-qemu/

Comment 2 Fabiano Fidêncio 2019-11-26 07:52:42 UTC
virt-manager / virt-install:
1547e16d62736c861a0e4dadeb86ef372d2698bd
2e20b128a1a1f064c5036d3d3d0cf5b09117b9da
8f4c53ea960459516794ba533060a176cc26f121
d9736db9d983d01c03929de226365dbf56a791a3

Comment 3 Fabiano Fidêncio 2019-11-27 09:53:27 UTC
Actually, two more patches will be needed so those 4 apply properly. Here's the full list

master:
 534f2e03d077306af4309babd30d92ea3ec4e8c0
 651e5b6d753930a2e7536efa4e6d20f57b038e80
 1547e16d62736c861a0e4dadeb86ef372d2698bd
 2e20b128a1a1f064c5036d3d3d0cf5b09117b9da
 8f4c53ea960459516794ba533060a176cc26f121
 d9736db9d983d01c03929de226365dbf56a791a3

Comment 5 zhoujunqin 2019-12-05 09:44:57 UTC
Hi Pavel,
I noticed that this feather is supported by Fast train.

With packages version:
libvirt-5.9.0-4.module+el8.2.0+4836+a8e32ad7.x86_64
qemu-kvm-4.2.0-1.module+el8.2.0+4793+b09dd2fb.x86_64
virt-manager-2.2.1-3.el8.noarch
virt-install-2.2.1-3.el8.noarch
edk2-ovmf-20190308git89910a39dcfd-6.el8.noarch

1.1 It works on Fast train.
# virt-install --name vm1 --memory 1024 --disk=/var/lib/libvirt/images/rhel7-uefi.qcow2 --import --boot uefi --video bochs
WARNING  Changing machine type from 'pc-i440fx-rhel7.6.0' to 'q35' which is required for UEFI secure boot.

=================================================================================
Slow train: "ERROR    unsupported configuration: unknown video model 'bochs'"

Package version: 
virt-install-2.2.1-3.el8.noarch
virt-manager-2.2.1-3.el8.noarch
libvirt-4.5.0-36.module+el8.2.0+4817+92ef2d83.x86_64
qemu-kvm-2.12.0-92.module+el8.2.0+5014+5115d99d.x86_64
edk2-ovmf-20190308git89910a39dcfd-6.el8.noarch

2.1
# virt-install --name vm1 --memory 1024 --disk=/var/lib/libvirt/images/rhel7-uefi.qcow2 --import --boot uefi --video bochs
WARNING  Changing machine type from 'pc-i440fx-rhel7.6.0' to 'q35' which is required for UEFI secure boot.
WARNING  No operating system detected, VM performance may suffer. Specify an OS with --os-variant for optimal results.

Starting install...
ERROR    unsupported configuration: unknown video model 'bochs'

I also checked by "virsh domcapabilities", there is no "bochs" listed under video device.

# virsh domcapabilities
...
    <video supported='yes'>
      <enum name='modelType'>
        <value>vga</value>
        <value>cirrus</value>
        <value>qxl</value>
        <value>virtio</value>
      </enum>
    </video>


2.2 But when launch virt-manager UI, "Bochs" is listed under Video device, when I add it to vm, it also reports error:
Error changing VM configuration: unsupported configuration: unknown video model 'bochs'.

So Pavel, please help have a look of my comment, Is it still suitable to test on slow train, thanks.

Comment 6 Fabiano Fidêncio 2019-12-05 12:24:35 UTC
(In reply to zhoujunqin from comment #5)
> Hi Pavel,
> I noticed that this feather is supported by Fast train.
> 
> With packages version:
> libvirt-5.9.0-4.module+el8.2.0+4836+a8e32ad7.x86_64
> qemu-kvm-4.2.0-1.module+el8.2.0+4793+b09dd2fb.x86_64
> virt-manager-2.2.1-3.el8.noarch
> virt-install-2.2.1-3.el8.noarch
> edk2-ovmf-20190308git89910a39dcfd-6.el8.noarch
> 
> 1.1 It works on Fast train.
> # virt-install --name vm1 --memory 1024
> --disk=/var/lib/libvirt/images/rhel7-uefi.qcow2 --import --boot uefi --video
> bochs
> WARNING  Changing machine type from 'pc-i440fx-rhel7.6.0' to 'q35' which is
> required for UEFI secure boot.
> 
> =============================================================================

Perfect!

> ====
> Slow train: "ERROR    unsupported configuration: unknown video model 'bochs'"
> 
> Package version: 
> virt-install-2.2.1-3.el8.noarch
> virt-manager-2.2.1-3.el8.noarch
> libvirt-4.5.0-36.module+el8.2.0+4817+92ef2d83.x86_64
> qemu-kvm-2.12.0-92.module+el8.2.0+5014+5115d99d.x86_64
> edk2-ovmf-20190308git89910a39dcfd-6.el8.noarch
> 
> 2.1
> # virt-install --name vm1 --memory 1024
> --disk=/var/lib/libvirt/images/rhel7-uefi.qcow2 --import --boot uefi --video
> bochs
> WARNING  Changing machine type from 'pc-i440fx-rhel7.6.0' to 'q35' which is
> required for UEFI secure boot.
> WARNING  No operating system detected, VM performance may suffer. Specify an
> OS with --os-variant for optimal results.
> 
> Starting install...
> ERROR    unsupported configuration: unknown video model 'bochs'
> 
> I also checked by "virsh domcapabilities", there is no "bochs" listed under
> video device.
> 
> # virsh domcapabilities
> ...
>     <video supported='yes'>
>       <enum name='modelType'>
>         <value>vga</value>
>         <value>cirrus</value>
>         <value>qxl</value>
>         <value>virtio</value>
>       </enum>
>     </video>
> 
> 
> 2.2 But when launch virt-manager UI, "Bochs" is listed under Video device,
> when I add it to vm, it also reports error:
> Error changing VM configuration: unsupported configuration: unknown video
> model 'bochs'.
> 
> So Pavel, please help have a look of my comment, Is it still suitable to
> test on slow train, thanks.


Not Pavel here, but ... as far as I understand there's no bug asking bochs display support on Slow Train. Or, IOW, just fast train should be supported.

Did I answer your question, zhoujunqin?

Comment 7 zhoujunqin 2019-12-06 02:52:06 UTC
Hi Fabiano Fidêncio,
Thanks for your kind reply.
Please refer to comment: https://bugzilla.redhat.com/show_bug.cgi?id=1658511#c8

virt-manager which is RHEL only, but bochs display is requested by Fast train,
We'd better remove this bug from virt-manager errata, thanks.

BR,
juzhou.


Note You need to log in before you can comment on or make changes to this bug.