x11vnc icon indicating copy to clipboard operation
x11vnc copied to clipboard

x11vnc has display artifacts and works slowly if monitor is disconnected or used with a KVM switch.

Open pmorch opened this issue 9 months ago • 2 comments

If you'd like to put out an incentive for fixing this bug, you can do so at https://issuehunt.io/r/LibVNC/x11vnc

Describe the bug

I'm running a standard Ubuntu 22.04 desktop (with Gnome under the hood), using xorg instead of wayland.

If I start e.g. x11vnc -display :0 -forever -rfbport 5901 and leave the monitor connected, it works great.

I use a KVM switch and so leaving this computer as the active display works great. But if I switch to another display, the problem appears. This also happens if I connect the monitor directly to the computer and then later disconnect it . (Strangely, it continues to work if I power off the monitor, but leave it plugged in, but that may depend on the monitor.)

(I realize that this project needs a new maintainer and so this might never get fixed, but now it is recorded for posterity...)

To Reproduce

  1. Run x11vnc -display :0 -forever -rfbport 5901
  2. See that it works from a remote machine
  3. Disconnect the monitor. Either by switching a KVM switch to use another computer, or by disconnecting the monitor
  4. See the error
  5. Reconnect the monitor or switch the KVM switch back to serving this computer and normal operation is restored.

Expected Behavior

I expect x11vnc to continue behaving as it did when the monitor was connected.

Actual Behavior

Moving windows and other interactions become slow, and it appears as if there are multiple windows. It is basically unusable.

Screenshots

Original single window as it looks with a connected monitor.

original single window

Then I disconnected the monitor and moved the window:

Moved window

Only the bottom-right one is interactive. There is only supposed to be a single window.

Additional Information

A gnome-session-flashback session works fine.

This problem was originally described here: vnc - Why do both x11vnc and x0vncserver fail in similar ways in Gnome Ubuntu 22.04? - Ask Ubuntu

I plan on working around this problem with an EDID Emulator. I've ordered this one. It hopefully lets the computer think the display is still attached. And then next time I update the KVM switch, get one with a built-in EDID emulator. I'll try to remember to update this thread when the EDID emulator arrives and I've tried it out.

Desktop (please complete the following information):

  • OS and version: Ubuntu 22.04
  • Xorg version used: (see below)
  • Wayland version used: (not relevant I think, but see below)
  • Gnome: 42 using xorg, not wayland.
$ dpkg-query -W | egrep 'xorg|wayland' | sort
kwayland-data	4:5.92.0-0ubuntu1
kwayland-integration:amd64	4:5.24.4-0ubuntu1
libkf5waylandclient5:amd64	4:5.92.0-0ubuntu1
libqt5waylandclient5:amd64	5.15.3-1
libqt5waylandcompositor5:amd64	5.15.3-1
libva-wayland2:amd64	2.14.0-1
libwayland-client0:amd64	1.20.0-1ubuntu0.1
libwayland-client0:i386	1.20.0-1ubuntu0.1
libwayland-cursor0:amd64	1.20.0-1ubuntu0.1
libwayland-egl1:amd64	1.20.0-1ubuntu0.1
libwayland-server0:amd64	1.20.0-1ubuntu0.1
libwayland-server0:i386	1.20.0-1ubuntu0.1
qtwayland5:amd64	5.15.3-1
xorg	1:7.7+23ubuntu2
xorg-docs-core	1:1.7.1-1.2
xserver-xorg	1:7.7+23ubuntu2
xserver-xorg-core	2:21.1.4-2ubuntu1.7~22.04.1
xserver-xorg-input-all	1:7.7+23ubuntu2
xserver-xorg-input-libinput	1.2.1-1
xserver-xorg-input-wacom	1:1.0.0-3ubuntu1
xserver-xorg-legacy	2:21.1.4-2ubuntu1.7~22.04.1
xserver-xorg-video-all	1:7.7+23ubuntu2
xserver-xorg-video-amdgpu	22.0.0-1ubuntu0.1
xserver-xorg-video-ati	1:19.1.0-2ubuntu1
xserver-xorg-video-fbdev	1:0.5.0-2build1
xserver-xorg-video-intel	2:2.99.917+git20210115-1
xserver-xorg-video-nouveau	1:1.0.17-2build1
xserver-xorg-video-qxl	0.1.5+git20200331-3
xserver-xorg-video-radeon	1:19.1.0-2ubuntu1
xserver-xorg-video-vesa	1:2.5.0-1build4
xserver-xorg-video-vmware	1:13.3.0-3build1
xwayland	2:22.1.1-1ubuntu0.6

pmorch avatar Sep 10 '23 15:09 pmorch