Bug 1240820 - VMs default to 1920x1200 resolution, can cause GNOME start to fail due to lack of VRAM
Summary: VMs default to 1920x1200 resolution, can cause GNOME start to fail due to lac...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: libvirt
Version: 23
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Libvirt Maintainers
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 1093998 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-07-07 20:28 UTC by Adam Williamson
Modified: 2015-09-12 14:54 UTC (History)
11 users (show)

Fixed In Version: 1.2.18-1.fc23
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-09-12 14:54:25 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1093998 0 unspecified CLOSED Gtk2 [e.g. via Xfce] resolution not preserved across logon/reboot 2021-02-22 00:41:40 UTC

Internal Links: 1093998

Description Adam Williamson 2015-07-07 20:28:05 UTC
I actually have no idea what's changed here - could be libvirt or qemu or spice or something - but starting at virt-manager.

Since I updated my desktop to Rawhide, I think, VMs seem to want to start up at 1920x1200 resolution, not 1024x768 as before. This is kind of an impractical size, but more importantly, in one of my VMs, it actually causes GNOME to fail apparently due to lack of VRAM:

Jul 07 16:20:48 localhost /usr/libexec/gdm-x-session[1389]: (II) qxl(0): Allocate new frame buffer 1920x1200 stride
Jul 07 16:20:48 localhost kernel: [drm:qxl_crtc_mode_set [qxl]] *ERROR* Mode doesn't fit in vram size (vgamem)
Jul 07 16:20:48 localhost kernel: [drm:drm_crtc_helper_set_config [drm_kms_helper]] *ERROR* failed to set mode on [CRTC:21]
Jul 07 16:20:48 localhost gnome-session[1456]: X Error of failed request:  BadMatch (invalid parameter attributes)
Jul 07 16:20:48 localhost gnome-session[1456]: Major opcode of failed request:  139 (RANDR)
Jul 07 16:20:48 localhost gnome-session[1456]: Minor opcode of failed request:  7 (RRSetScreenSize)
Jul 07 16:20:48 localhost gnome-session[1456]: Serial number of failed request:  177
Jul 07 16:20:48 localhost gnome-session[1456]: Current serial number in output stream:  178
Jul 07 16:20:48 localhost gnome-session[1456]: gnome-session[1456]: WARNING: App 'gnome-shell.desktop' exited with code 1
Jul 07 16:20:48 localhost gnome-session[1456]: WARNING: App 'gnome-shell.desktop' exited with code 1
Jul 07 16:20:48 localhost /usr/libexec/gdm-x-session[1389]: (EE) qxl(0): failed to set mode: Invalid argument(II) qxl(0): Allocate new frame buffer 1920x1200 stride
Jul 07 16:20:48 localhost kernel: [drm:qxl_crtc_mode_set [qxl]] *ERROR* Mode doesn't fit in vram size (vgamem)
Jul 07 16:20:48 localhost kernel: [drm:drm_crtc_helper_set_config [drm_kms_helper]] *ERROR* failed to set mode on [CRTC:21]
Jul 07 16:20:48 localhost gnome-session[1456]: X Error of failed request:  BadMatch (invalid parameter attributes)
Jul 07 16:20:48 localhost gnome-session[1456]: Major opcode of failed request:  139 (RANDR)
Jul 07 16:20:48 localhost gnome-session[1456]: Minor opcode of failed request:  7 (RRSetScreenSize)
Jul 07 16:20:48 localhost gnome-session[1456]: Serial number of failed request:  177
Jul 07 16:20:48 localhost gnome-session[1456]: Current serial number in output stream:  178
Jul 07 16:20:48 localhost gnome-session[1456]: gnome-session[1456]: WARNING: App 'gnome-shell.desktop' exited with code 1
Jul 07 16:20:48 localhost gnome-session[1456]: WARNING: App 'gnome-shell.desktop' exited with code 1
Jul 07 16:20:48 localhost gnome-session[1456]: gnome-session[1456]: WARNING: App 'gnome-shell.desktop' respawning too quickly
Jul 07 16:20:48 localhost gnome-session[1456]: WARNING: App 'gnome-shell.desktop' respawning too quickly
Jul 07 16:20:48 localhost gnome-session[1456]: Unrecoverable failure in required component gnome-shell.desktop

On my other VM it works. The VM where GNOME startup fails has this line:

      <model type='qxl' ram='65536' vram='65536' vgamem='8192' heads='1'/>

whereas the VM where GNOME startup works has this:

      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='2'/>

so I guess the difference is the 'vgamem' value. But those values were a virt-manager or libvirt or something default, they came in when I created the VM (I did not set them manually) and virt-manager does not offer a UI to change the values. So this 1920x1200 resolution is too high for what must have been the default qxl adapter configuration at least at *some* point. I just removed and re-added the QXL adapter from that VM and it now has 16384 for vgamem, so I guess the default value was bumped from 8192 to 16384 at some point.

virt-manager-1.2.1-2.fc23.noarch
libvirt-1.2.16-2.fc23.x86_64
qemu-2.3.0-15.fc23.x86_64
spice-server-0.12.5-8.fc23.x86_64

Comment 1 Jan Kurik 2015-07-15 13:20:38 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 23 development cycle.
Changing version to '23'.

(As we did not run this process for some time, it could affect also pre-Fedora 23 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 23 End Of Life. Thank you.)

More information and reason for this action is here:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora23

Comment 2 Cole Robinson 2015-08-10 20:22:50 UTC
I think this is a libvirt issue that should be fixed in 1.2.18:

commit a5bdb8459a8187cba3e1d41036de0bd0ae027c85
Author: Martin Kletzander <mkletzan>
Date:   Wed Jul 22 09:59:48 2015 +0200

    Revert "qemu: Use heads parameter for QXL driver"

You'll probably need to remove the bad <video> XML and readd QXL with

<video><model type='qxl'/></video>

Comment 3 Fedora Update System 2015-08-10 20:23:30 UTC
libvirt-1.2.18-1.fc23 has been submitted as an update for Fedora 23.
https://admin.fedoraproject.org/updates/FEDORA-2015-13113/libvirt-1.2.18-1.fc23

Comment 4 Raphael Groner 2015-08-28 13:04:51 UTC
*** Bug 1093998 has been marked as a duplicate of this bug. ***

Comment 5 Raphael Groner 2015-08-28 13:06:58 UTC
Especially Gtk2 based guests seem to suffer from this restriction in somewhere the complex SPICE logic.

Comment 6 Fedora Update System 2015-09-01 03:37:21 UTC
libvirt-1.2.18-1.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

Comment 7 Adam Williamson 2015-09-08 21:08:16 UTC
Sorry, but this doesn't seem to be fixed. I have libvirt-1.2.18-1.fc23. I edited my VM's XML (with 'virsh edit') as suggested. After exiting virsh, the block becomes this:

    <video>
      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/>
    </video>

and on booting F23 Beta TC4 Workstation live, it still defaults to 1920x1200 resolution.

Comment 8 Cole Robinson 2015-09-12 14:54:25 UTC
Yeah I see the big resolution issue. There's another bug tracking that as well: https://bugzilla.redhat.com/show_bug.cgi?id=1252677

Let's keep this closed since it was also about the 'not enough vram' issue which _is_ fixed. So please jump on that other bug, I'll comment there in a bit


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