https://bugs.kde.org/show_bug.cgi?id=523022
Bug ID: 523022
Summary: Output stays black permanently when monitor is powered
on after boot — no retry after "Failed to find a
working output layer configuration" on hotplug
Classification: Plasma
Product: kwin
Version First 6.7.2
Reported In:
Platform: CachyOS
OS: Linux
Status: REPORTED
Severity: normal
Priority: NOR
Component: platform-drm
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Target Milestone: ---
## Description
SUMMARY
If the PC is booted while the (sole) monitor is still powered off, and the
monitor is then turned on after the login greeter has started, the screen
stays black with only the mouse cursor visible — permanently. KWin logs a
single failed output configuration attempt at the moment of the hotplug
event and never retries. Restarting the greeter service (fresh KWin start
while the output is already connected) brings the display up immediately,
so the mode itself is fine; only the hotplug reconfiguration path fails.
The failing KWin instance is the greeter compositor (Plasma Login Manager /
plasmalogin on CachyOS), but the bug is in KWin's DRM hotplug handling, not
in the greeter.
STEPS TO REPRODUCE
1. Single monitor connected via DisplayPort (3440x1440), monitor powered OFF
2. Boot the machine; amdgpu initializes with no display detected
("Cannot find any crtc or sizes"), greeter KWin starts with zero outputs
3. Turn the monitor on
OBSERVED RESULT
The monitor wakes up, the DRM connector goes to connected/enabled, but the
screen shows only black with a movable mouse cursor (cursor plane works,
primary plane does not). KWin logs:
20:18:02.521 kernel: amdgpu 0000:03:00.0: [drm] Cannot find any crtc or
sizes
20:18:12.219 kwin_wayland[908]: No backend specified, automatically
choosing drm
20:18:12.221 kwin_wayland[908]: Accepting client connections on sockets:
QList("wayland-0")
20:19:27.515 kwin_wayland[908]: Failed to find a working output layer
configuration! Enabled layers:
20:19:27.515 kwin_wayland[908]: src KWin::RectF(0,0 3440x1440) -> dst
KWin::Rect(0,0 3440x1440)
20:19:27.515 kwin_wayland[908]: Applying output configuration failed!
(The hotplug arrived ~75 s after KWin started; the monitor had just woken
from standby, so DP link training had only just completed.)
After this single failure KWin never attempts the configuration again. The
output stays black indefinitely.
`systemctl restart plasmalogin.service` (i.e. a fresh kwin_wayland start
with the output already present) succeeds immediately with the exact same
mode — confirming the modeset itself is valid and only the hotplug-time
atomic test-commit was rejected.
EXPECTED RESULT
Two things, independently:
1. The atomic test-commit directly after a hotplug event should succeed for
a configuration that demonstrably works seconds later (possibly needs a
short retry/settle delay while the DP link finishes training).
2. Even if a hotplug reconfiguration fails, KWin should retry instead of
giving up permanently — a single transient rejection currently results
in a permanently black output until the compositor is restarted.
This looks related to the class of issues fixed in bug 509635 (bandwidth
fallback after "Failed to find a working output layer configuration",
fixed in 6.5.1), but the hotplug-after-boot path is evidently still not
covered in 6.7.2.
SOFTWARE/OS VERSIONS
Operating System: CachyOS (Arch-based)
Kernel: 7.1.2-3-cachyos
KDE Plasma Version: 6.7.2
KWin Version: 6.7.2
Qt Version: 6.11.1
Mesa: 26.1.4
Graphics: AMD Radeon RX 9070 (Navi 48 / RDNA 4, DCN 4.0.1), amdgpu, single
monitor 3440x1440 via DisplayPort
Session: Wayland; greeter is Plasma Login Manager (plasmalogin)
ADDITIONAL INFORMATION
- 100% reproducible reproducer available (boot with monitor off, then power
it on). Happy to provide full journals or drm.debug logs on request.
- The same software stack (identical kernel/KWin/Mesa versions) boots fine
when the monitor is powered on before the PC.
- The affected KWin instance runs with default environment (atomic
modesetting enabled).
--
You are receiving this mail because:
You are watching all bug changes.