Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ABGR8888 causes DisplayLink reconnection loop on Wayland sessions #459

Open
YourSandwich opened this issue Feb 29, 2024 · 9 comments
Open

Comments

@YourSandwich
Copy link

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.

@YourSandwich YourSandwich changed the title ABGR8888 causes DisplayLink reconnection loop ABGR8888 causes DisplayLink reconnection loop on Waylanbd sessions Feb 29, 2024
@YourSandwich YourSandwich changed the title ABGR8888 causes DisplayLink reconnection loop on Waylanbd sessions ABGR8888 causes DisplayLink reconnection loop on Wayland sessions Feb 29, 2024
@YourSandwich
Copy link
Author

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

@stollr
Copy link

stollr commented Mar 6, 2024

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

@YourSandwich
Copy link
Author

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

@Contik
Copy link

Contik commented Mar 6, 2024

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

@stollr
Copy link

stollr commented Mar 8, 2024

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

kdesysadmin pushed a commit to KDE/kwin that referenced this issue Mar 22, 2024
Works around evdi driver bug "ABGR8888 causes DisplayLink
reconnection loop on Wayland sessions"
DisplayLink/evdi#459

BUG: 475922
kdesysadmin pushed a commit to KDE/kwin that referenced this issue Mar 22, 2024
Works around evdi driver bug "ABGR8888 causes DisplayLink
reconnection loop on Wayland sessions"
DisplayLink/evdi#459

BUG: 475922
@Sino-Huang
Copy link

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?

@Zamundaaa
Copy link

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

@Sino-Huang
Copy link

Greeting, does Plasma 6.0.3 solve the problem?

@YourSandwich
Copy link
Author

No

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants