Hi, On 08/26/2012 03:48 PM, Hans de Goede wrote:
Hi, As part of integrating the spice-vdagent xrandr patches (done, as there were many other patches pending, so fixes can just be applied on top), I've been testing the new xrandr multi-mon / arbitrary resolution support. With single monitor setups, things work fine, but with multiple monitor setups things don't work as advertised. 1) There is no way to enable extra monitors from remote-viewer, with the new xrandr code I would expect there to be 4 displays under the view->displays menu, but there is only 1. 2) Starting remote viewer with --full-screen=auto-conf, does result in the 2nd qxl head being enabled, but remote-viewer viewer does not see it as a separate display, instead the 2 monitors are rendered next to each other in a single window. And since windows full screen to a single monitor, this means that after --full-screen=auto-conf, the user gets 2 small views into the guest next to each other in a single full-screen window, with large black areas above and below, see the attached screenshot (which shows both my monitors)
Note this happens with a vm with had 2 qxl devices (as I used it to test multi-mon with Xinerama in the past, but it now is no longer using Xinerama) removing one of the qxl devices, seems to move me directly to problem 4, as soon as --full-screen=auto-conf is used, likely a race condition and we now have slightly different timing, more on this later.
3) Exiting fullscreen mode after using --full-screen=auto-conf results in remote-viewer resizing its window to fit both monitors next to each other, so in my case to 3840x1080, and then telling the agent to resize monitor 1 inside the guest to 3840x1080, and not touching monitor 2. So the guest now thinks it has 2 monitors 1 of 3840x1080, and a second one mapped of 1920x1080+1920+0, so it thinks the second monitor is a clone of the right halve of the screen... And remote-viewer does not show this clone at all 4) Resizing the window after step 3. (since 3840x1080 won't fit when adding window decorations, etc. results in the per x-session agent process in the guest crashing with: spice-vdagent[1483]: 0xc07010 received monitors config, arg1: 0, arg2: 0, size 48 spice-vdagent[1483]: from guest: 2, 1 spice-vdagent[1483]: received monitor 0 config 3840x1080+0+0 spice-vdagent[1483]: received monitor 1 config 1920x1080+1920+0 spice-vdagent[1483]: after zeroing: 2, 1 spice-vdagent[1483]: received monitor 0 config 3840x1080+0+0 spice-vdagent[1483]: received monitor 1 config 1920x1080+1920+0 spice-vdagent[1483]: delete_mode of in use mode, setting crtc to NULL mode X Error of failed request: BadMatch (invalid parameter attributes) Major opcode of failed request: 148 (RANDR) Minor opcode of failed request: 21 (RRSetCrtcConfig) Serial number of failed request: 100 Current serial number in output stream: 100 [hans@localhost ~]$
Regards, Hans _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel