DisplayLink / evdi

Extensible Virtual Display Interface

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ABGR8888 causes DisplayLink reconnection loop on Wayland sessions

YourSandwich opened this issue · comments

Freeze Issue with DisplayLink Monitors on Wayland with ARGB8888 Based Compositors

Summary

A significant issue has been identified affecting users of the Plasma 6 environment when connecting monitors through a Lenovo dud9011d1 docking station via DisplayLink to a Lenovo ThinkBook 14 G3 laptop. The core of the problem lies in the freezing of kwin_wayland when the compositor uses ARGB8888 pixel format. This freezing manifests shortly after the monitors are connected, either becoming static or entering a loop of continuous reinitialization.

  • Laptop Model: Lenovo ThinkBook 14 G3, AMD GPU
  • Docking Station: Lenovo dud9011d1, connected over USB-C with DisplayLink protocol
  • Monitors: Two 1920x1080, 75hz, Scaling 100%
  • Kernel Drivers on X11: evdi (version 1.14.2) and displaylink

Steps to Reproduce

  1. Initiate a Plasma Wayland session (applicable to both Plasma 5 and 6).
  2. Connect monitors using the Lenovo dud9011d1 docking station.
  3. Attach the docking station to the laptop via DisplayLink.

Observed Behavior

  • Monitors may momentarily function (1-2 seconds) before the display freezes.
  • While the laptop's main screen remains responsive, the session is prone to frequent freezes, or the external monitors may repeatedly reinitialize.

System Information

  • Kernel Versions Tested: 6.7.6 and 6.1.59
  • Operating System: ArchLinux (as of 27.02.2024)
  • KDE Plasma Version: 5.27.8, with the issue persisting into Plasma 6.
  • KDE Frameworks Version: 5.110.0
  • Qt Version: 5.15.11

Resolution

The issue was effectively mitigated by switching the pixel format from ARGB8888 to XRGB8888, utilizing the KWIN_DRM_NO_AMS=1 environment variable. This adjustment resulted in the stable operation of all connected displays without the prior freezing or reinitialization issues.

Additional Context

Through extensive discussions and diagnostics tracked in the KDE bug report (#475922), the problem is suggested to stem from a driver-level inconsistency specifically related to the handling of the ARGB8888 pixel format by the DisplayLink technology. Switching to the XRGB8888 format, which Xorg usually uses by default, has been a solid quick fix for Plasma 6.

More details available at the KDE Issue Tracker -> https://bugs.kde.org/show_bug.cgi?id=475922

I have the same issue on my TUXEDO Aura 15 Gen1 Notebook:
CPU: AMD Ryzen 7 4700U
Graphic: AMD Radeon™ RX Vega Graphics

Docking station:
i-tec USB 3.0 / USB-C / Thunderbolt 3, 3x 4K Docking Station + Power Delivery 85W (CATRIPLE4KDOCKPD):

OS: KDE neon 6.0 (based on Ubuntu 22.04)
Kernel: Linux version 6.5.0-10022-tuxedo

You can fix that temporary for Plasma by setting KWIN_DRM_NO_AMS=1 env Variable
This will enforce XRGB8888 pixel formatting.

Also affected, workaround works:

# grep -s . /sys/devices/evdi/*
/sys/devices/evdi/count:2
/sys/devices/evdi/loglevel:4
/sys/devices/evdi/version:1.14.2
  • HP USB-C/A Universal Dock G2, model L61608-001
  • HP ProBook 455 G10, model 854L2ES#ABD, has a Ryzen 7 7730U Barceló-R family CPU and an integrated Vega GPU with Graphics Core Next (GCN) 5 instruction set

@YourSandwich Thank you! Your suggested workaround works for me :-)

Sorry to trouble but I do not understand the effect of KWIN_DRM_NO_AMS=1
Will it affect any other things in the computer?

Right now it reduces the maximum bits per color on all displays to 8, and may increase latency a tiny bit. As a temporary workaround it's fine to use

Greeting, does Plasma 6.0.3 solve the problem?