[Spice-devel] qxl-vga.vgamem_mb and large monitors

David Mansfield spice at dm.cobite.com
Fri Jun 19 11:22:25 PDT 2015

Hi All,

We (4 of us in my company) have been very happy with spice over the last 
year or so running with dual 1920x1200 monitors, for which 
qxl-vga.vgamem_mb always needed to be set to 32 (default is 16) or 
Xorg-qxl doesn't get enough video ram.  I even bumped it to 64MB and we 
can run a 3940x2160 and a 1920x1200 just fine.

This is set it libvirt domain xml like this:

     <qemu:arg value='-global'/>
     <qemu:arg value='qxl-vga.vgamem_mb=32'/>

This is a Centos 7.1 host and Fedora 22 guest

However, I just got a qemu-kvm update from the ovirt repository to 
version qemu-kvm-ev-2.1.2-23.el7_1.3.1.x86_64, from the previous version 
qemu-kvm-rhev-1.5.3-86.el7.1.x86_64, and now I get this error in Xorg.log:

[   321.154] (EE) qxl(0): failed to set mode: Invalid argument(II) 
qxl(0): Allocate new frame buffer 3840x1200 stride
[   332.363] (EE) qxl(0): failed to set mode: Invalid argument

Whereas at slightly lower resolution:

[   309.808] (II) qxl(0): Allocate new frame buffer 3840x1080 stride

Works fine.  Now:

3840 x 1080 x 4 = 16588800 < 16 * 1024 * 1024 = 16777216


3840 x 1200 x 4 = 18432000 > 16 * 1024 * 1024 = 16777216

So my conclusion is that the command line argument isn't working anymore 
and the 16MB default is back in place.

Has qemu/libvirt changed somehow making this old syntax invalid?

David Mansfield
Cobite, INC.

More information about the Spice-devel mailing list