Bug 40073 - configurabel graphics model - change default from Cirrus to video/model/@type='vga'
configurabel graphics model - change default from Cirrus to video/model/@type...
Status: CLOSED WONTFIX
Product: UCS
Classification: Unclassified
Component: Virtualization - UVMM
UCS 4.4
Other Linux
: P5 enhancement (vote)
: ---
Assigned To: UCS maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2015-11-23 16:32 CET by Philipp Hahn
Modified: 2023-06-28 10:46 CEST (History)
3 users (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 2: Improvement: Would be a product improvement
Who will be affected by this bug?: 3: Will affect average number of installed domains
How will those affected feel about the bug?: 3: A User would likely not purchase the product
User Pain: 0.103
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Philipp Hahn univentionstaff 2015-11-23 16:32:05 CET
UVMM uses @type='cirrus' by default, which only supports max 1024×768 in Windows7.
Using @type='vga' allows up to 2560×1600 in Windows7.
Allowing 'vmware' or 'qxl' would be even better.

FYI: 'cirrus' is the simplest possible and most compatible design, which is(was?) supported by all legacy OS. As all OS listed by UVMM support SVGA as well, we should switch to that by default or add an option to make that configurable in the profile.

There are also reports (for KVM-0.12), that "cirrus" slows down the Windows boot when (registry) updates are applied.
Comment 1 Philipp Hahn univentionstaff 2015-11-24 08:45:23 CET
See Bug #30978 comment 5 for details on differences between cirrus(pre-VESA) and stdvga(linear FB).
Comment 2 Philipp Hahn univentionstaff 2017-06-20 12:54:28 CEST
(In reply to Philipp Hahn from Bug #30978 comment #5)
> <http://wiki.gentoo.org/wiki/QEMU/Options#Graphics_card>
> -vga cirrus - Simple graphics card. Every guest OS has a built-in driver.
> -vga std - Support resolutions >= 1280x1024x16. Linux, Windows XP and newer
> guest have a built-in driver.
> 
> From qemu-devel:
> 
> Message-ID:
> <CA+aC4ksx7dyUQkpkTi1bH_Lp9X04VFKgRPZ0TBS4f=jzhU2Wog@mail.gmail.com>
> > Windows XP uses VGA planar mode during boot up.   This means that to set a pixel requires 3 MMIO operations (one for the red pixel, one for the green pixel, one for the blue pixel).
> 
> 
> Message-ID:
> <CA+aC4kvnqOECrjoW2C90QhRzLSu0+rNhBuQE9Ld=-mPxFqKHyA@mail.gmail.com>
> > Cirrus predates VESA.  VESA has a linear framebuffer mode and WinXP can use VESA modes (provided that VESA drivers are installed).  A linear framebuffer mode requires no [VM] exits to update individual pixels.
> 
> 
> Message-ID: <20130727115118.GM2924@reaktio.net>
> > One of the reasons to use emulated Cirrus is that there's a KMS driver for it.

stdvga has a drm driver since linux-3.14 "bochsdrmfb", so all UCS versions >= 3.3 have it.

Also read <https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful/> why we should use modle="vga" or even model="qxl".
Comment 3 Philipp Hahn univentionstaff 2018-10-26 13:37:12 CEST
There are even plant to deprecate VGA in Qemu:
<https://www.kraxel.org/blog/2018/10/qemu-vga-emulation-and-bochs-display/>

This should be configurable via UVMM and by profile.
Comment 4 Philipp Hahn univentionstaff 2019-09-30 08:01:36 CEST
Excellent article describing the differences and recommendations: <https://www.kraxel.org/blog/2019/09/display-devices-in-qemu/>
Comment 5 Arvid Requate univentionstaff 2019-10-01 13:54:40 CEST
Also important for Ubuntu 18.04: IIRC bootsplash freezes with "cirrus" and requires setting type to "qxl".
Comment 6 Philipp Hahn univentionstaff 2019-10-01 16:48:24 CEST
'qxl' is already deprecated - read that article from comment 4!
Comment 7 Philipp Hahn univentionstaff 2023-06-28 10:44:07 CEST
UVMM and virtualization with UCS is deprecated and will no longer be developed in UCS 4.4; they have already been removed from UCS 5.0.