Non-clickable area beyond full HD resolution

Hi,

I have a multi-monitor setup. If I use an external display with a resolution above 1920x1080, initially the VMs operate normally, but after some time, (after disconnect/reconnect suspend/resume unknown sequence of events etc) only the FHD area from top left of the screen remains clickable.

Dom0 operates normally, this behavior occurs on the VMs (although the vms can maximize etc, their content is not clickable beyond 1920x1080).

Any ideas?

2 Likes

Thanks for the link.

In my case I have three displays, at most 3 columns and 2 rows.

$ echo $(((1920+1920+2560)*(1440+1080)*4/1024))
63000
$ qvm-features dom0 gui-videoram-min 63000
$ qvm-features dom0 gui-videoram-overhead 0

So this is the recommended configuration. I am happy to optimize this.

However, this did not help with the non-clickable regions beyond FHD.

To elaborate more,
This behavior appears to be vm specific, that it might happen on one VM whilst not happen on some other VM. So it might be related to the VM content mapping at the gui level?

If I click a point at x=2560, then the VM’s x=1920 gets clicked.

So not a truely non-clickable region, but in fact VM content is restricted to 1920x1080, click-wise. The content can display beyond FHD.

Did you restart qubes after changing videoram configuration?

Is this issue only happens for specific apps or for all apps in the qube?
Do you have the same template for the qubes that are working fine and for ones that have this issue?

Yes, I restarted the qubes and the qubes os itself.

This happens for all the apps in the affected qube.
Some qubes do not get affected.

I have observed that it is template agnostic. It all appeared on fedora-39 fedora-39-xfce fedora-40 fedora-40-xfce, debian-12 (unstable)

The external display setup is through a USB dock. Sometimes it takes a bit to initialize the screens, I am not sure if this affects some initialization timings within some qubes subsystem. (It might be totally irrelevant.)

I think it’s better to find out what’s different between affected and not affected qubes to narrow down the issue.

I have run the display configuration management tool in the VM. For the fedora-40-xfce case, it is through the xfce4-display-settings.

The display there is reported as 1920x1080.
If I reboot the vm and run it, it is reported as 2560x1440.

How can I update the screen resolution from within the live vm, without rebooting?

Here is a workaround. I have cloned the modeline settings from another qube.

step 1. xrandr on the other qube.:

DUMMY0 connected primary 2560x1440+0+0 0mm x 0mm
   QB2560x1440   34.61*+

step 2. generate the modeline:

cvt 2560 1440 34.61
# 2560x1440 34.57 Hz (CVT) hsync: 50.89 kHz; pclk: 171.00 MHz
Modeline "2560x1440_34.61"  171.00  2560 2696 2960 3360  1440 1443 1448 1472 -hsync +vsync

Note that the generated modeline is different from xrandr --verbose output. I don’t know if this is significant at the moment.

step.3: apply the modeline on the broken qube

xrandr --newmode "2560x1440_34.61"  171.00  2560 2696 2960 3360  1440 1443 1448 1472 -hsync +vsync

xrandr --addmode DUMMY0 2560x1440_34.61
xrandr --output DUMMY0 --mode 2560x1440_34.61

Now the whole screen becomes clickable again.
This needs to be repeated on other failed qubes.