[Spice-devel] [PATCH] how can i trace monitor change (etc) events

David Mansfield spice at dm.cobite.com
Mon Apr 21 10:23:07 PDT 2014


On 04/21/2014 12:02 PM, Greg Sheremeta wrote:
>>> In particular, with MATE we get a bunch of:
>>>
>>> (remote-viewer:12916): GSpice-WARNING **: FIXME: only support monitor
>>> config with primary surface 0, but given config surface 5
>>>
>>> Which seems suspicious to me, given that these are followed
>>> immediately by incorrect behavior and don't happen in GNOME3.
>>>
>> Ok. This is worse than suspicious.  It's the bug.  In the source
>> gtk/spice-widget.c, right after this "FIXME" we goto "whole".  Maybe a
>> guru can explain why we need to bail out here and display the whole
>> framebuffer on the second monitor *on purpose*. However, the following
>> patch works for me:
>>
>> diff -ur spice-gtk-0.23.orig/gtk/spice-widget.c spice-gtk-0.23/gtk/spice-widget.c
>> --- spice-gtk-0.23.orig/gtk/spice-widget.c	2014-02-06 06:07:13.000000000 -0500
>> +++ spice-gtk-0.23/gtk/spice-widget.c	2014-04-17 16:46:20.204422442 -0400
>> @@ -325,7 +325,7 @@
>>    whole:
>>        g_clear_pointer(&monitors, g_array_unref);
>>        /* by display whole surface */
>> -    update_area(display, 0, 0, d->width, d->height);
>> +    update_area(display, c->x, c->y, c->width, c->height);
>>       set_monitor_ready(display, true);
>>   }
>>
>> Can someone explain why this would not be better than the currently
>> broken behavior?
>>
>> Note that after this patch, the code above the 'goto' label and the code
>> below are basically the same.
>>
>> It's very curious that running MATE in the VM triggers this but running
>> GNOME3 does not, but nevertheless the bug is clearly in spice-gtk.
>>
>> -- 
>> Thanks,
>> David Mansfield
>> Cobite, INC.
> David, did you open a bug on this anywhere? I have the same problem going on with LXDE. Cinnamon works great.
>
>
I'm planning to open a fedora bug for it, but I'm doing a bit more 
debugging first in the client... I'm not certain I understand how the 
above change (which has serious problems) is working.  I'll send email 
to the list when I've got more figured out.

As far as I understand, Cinnamon and GNOME3 both use a 3d rendering 
context for the entire desktop.  Somehow this affects the interaction 
between qxl.ko and the client.  All "traditional" X server based 
environments (LXDE, XFCE, Mate, Fluxbox) suffer from this problem.

Thanks,
David



More information about the Spice-devel mailing list