Spice Dual/Multiple Screen can't be enabled

someone755

New Member
Oct 8, 2019
5
0
1
40
Hello!

Recently I installed another instance of PVE on "new" server and soon after that I created VM. I installed Xubuntu 18.04 LTS and as always selected SPICE dual screen option for display. Along that I also enabled Qemu Agent and installed package `qemu-guest-agent` inside VM. However after the whole procedure I still only have single display option in client under the view section, even though the resolution of current display is correctly recognized in VM.

pve_spice_client.png

I created few VMs and installed latest versions of different distributions (Lubuntu, Manjaro XFCE, ...), but there was not a single VM that would show me multiple display options in client. Back when I installed my first VM and enabled Spice I remember the same problem, but it was probably because I did the minimal OS install in VM and after installing `spice-vdagent` I think this started to work. As I checked all installations I did already had that package present after first boot (and the agent service was active as copy/paste and screen resolution recognition worked out of the box). On the second install of Xubuntu on that node I don't remember that I was installing anything special to enable multi screen view for Spice.

I also noticed there were some updates for Spice included in latest revision of PVE - that node is running on 6.0-11 with updates from community repos. The initial version after install & update was 6.0-9 if I remember correctly. Is it possible there were some changes that may affect my installation and Spice feature?

---

Since it's the same topic, I also came across something very interesting while installed that much distros and VMs. Once I enabled Spice dual screen before I did install of Xubuntu. After everything installed and first reboot I got auto resizing screen feature which is available on Windows with installed drivers. The difference I seen in Arandr when using my other VMs where I manually set resolution and the one I just installed is that my old ones have screen named Virtual-0 (where 0 is number of display) and the new one has screen named QXL-0 (probably 0 is also number of display - couldn't test out). What should be installed/changed on my older VMs to get this feature working?

Thanks for any help in advance!
 
Thanks for bringing this to our attention. This is not the expected behavior. I can reproduce this and am investigating.
 
There is a patch out for review right now [0].

If you need to fix this ASAP you can run qm showcmd <vmID> --pretty to get the command line string to start the VM in Qemu. There is a line that should look like
Code:
-device 'qxl-vga,id=vga,bus=pcie.0,addr=0x1' \
Maybe you have more in there, for example, if you increased the memory.
Add a new parameter called max_outputs=4, like
Code:
-device 'qxl-vga,id=vga,max_outputs=4,bus=pcie.0,addr=0x1' \
and then start the VM by running that whole command on the CLI. You should be able to enable up to 4 displays again.

[0]: https://pve.proxmox.com/pipermail/pve-devel/2019-November/040461.html