Seeking Solutions for Multi-Monitor Support in VMs with Kernel Versions

Hello everyone,

I have been searching for the best virtualization solution for my needs, considering both QEMU/KVM and VMware. Although I would prefer QEMU/KVM, it unfortunately has a major downside: GPU acceleration. I have tried various combinations like QXL, Virtio with 3D acceleration, etc. Unfortunately, none of them provided the results I wanted. I also tested solutions like RDP, but they did not meet my expectations either. On the other hand, VMware offers impressive performance with its SVGA3D, running very smoothly.

However, VMware also has its own issues, such as copy/paste, drag/drop, and very slow text input. The biggest problem was multi-monitor support. After extensive testing, I discovered that the primary factor affecting whether multi-monitor setups work or not is the kernel version. More on this later.

After testing many distributions (Arch, Debian, Ubuntu) and various desktop environments (GNOME, MATE, KDE, XFCE, LXQt, LXDE, Budgie, Cinnamon), I concluded that the best solution for this is using XFCE or Cinnamon as VM desktop environments in conjunction with VMware. It also needs to be X11 since Wayland does not support multi-monitor setups for me.

Now to my question. I tested many kernels on Ubuntu and gradually worked my way up, noticing that the sweet spot is kernel 6.8.7. From 6.8.8 onwards, multi-monitor support no longer works. Does anyone know what changes after 6.8.7 and whether it is possible to “patch” these changes into the newer kernels? With 6.8.7, both multi-monitor support and text input are very smooth, making everything feel almost like bare metal, albeit with a 60Hz limitation.

I would appreciate any help. Thank you in advance.

Hello @n0one42 ,
I’ve played around with ICEWM. Let’s jump into middle of it (‘in medias res’):
icesh xinerama
0: 1920x1080+1600+0
1: 1600x900+0+0
shows the monitors
and if you have galculator on the 2nd monitor
icesh -X 1 -n galculat activate -s it.
There are tons of commands see man icesh
Additional cortile gives you switchable tiling. (Ctrl+Shift+T toggles cortile).
Here is a better theme
13minutes guide
I tested on Kernel 6.9.2-arch1-1
not in VM

Hi eso and thank you for the response, but this is not what I am looking for. My host system works perfectly fine. I’m running Plasma 6 with kernel 6.9.2-arch1-1 and Wayland. Everything functions well, and I do not want to change anything unless absolutely necessary. I also tried X11 instead of wayland on my host to see if it made a difference, but it did not.

The issue lies solely within the kernel inside the VM. The VM’s multi-monitor support (“cycle multiple monitors”) feature stop working with kernels newer than 6.8.7 inside the VM. The latest kernel that works is 6.8.7, so it must be something specific to changes made after this version. If the problem were host-dependent, no kernel version would work in the VM.

Any insights on what changes occurred after kernel 6.8.7 and how to possibly patch these into newer kernels would be greatly appreciated.

Thank you.

Hi @n0one42 You are so kind to me - a dyslexic rookie. Thank you for drawing my attention to some current issues in the VM world. So the most beautiful moments of this expedition is getting “Multiple monitor cycling” to work, although only by VMware-Workstation in LMDE6 Cinnamon
Kernel: 6.1.0-21
The guest sytems: EOS Plasma 6, Debian 12 BunsenLabs,Linux Mint, W10 (just for a short test)