Summary: | KWin wakes up the monitor right after going to sleep | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | David Rosca <nowrep> |
Component: | general | Assignee: | Sebastian Kügler <sebas> |
Status: | RESOLVED DUPLICATE | ||
Severity: | normal | CC: | aagaande, charles, daffy, email, james, jching, kde, mail, mcpain, nate, norbert, notmart, postix, reuben_p, rnet723, tarasov.igor, vkrevs, vlad.zahorodnii, xaver.hugl |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/kwin/-/commit/482a1f0fb5bddb6d376a6b8d39a04bc16786cc97 | Version Fixed In: | |
Sentry Crash Report: | |||
Attachments: |
kscreen log when external monitor goes to sleep
kscreen2 log after triggering dpms suspend journalctl -t kwin_wayland -t org_kde_powerdevil -t ksmserver after kscreen-doctor -d off |
The issue is when monitor is turned off, KScreen emits output disconnected and KScreenDaemon::outputConnectedChanged reapplies config which turns the monitor back on. I'm not sure what would be correct fix, my workaround is to query DPMS state in KScreenDaemon::outputConnectedChanged and if DPMS state is off, skip the reconfiguration. Can confirm, just never connected the cause to the effect. Thanks for the report. Same problem with my two-screen configuration. When both are switching off, after 10-15 seconds, they are switching back on, and do not even try to switch off again. I think there should be a setting "Do not disconnect external monitor after switching it off" KScreen 5.11.4 Differential revision: https://phabricator.kde.org/D9506 First monitor if BenQ GW2406-T Bug reproduces if secondary monitor is iiyama X2481FS-B1 After changing to AOC 238LM00008 I cannot reproduce this. Apparently this is a bug in DRM: https://gitlab.freedesktop.org/drm/amd/-/issues/662 I'm having the same issue on nvidia hardware. apt-get remove kscreen && killall kscreen_backend_launcher solves the problem. Also with amdgpu and 2x DisplayPort monitors (Dell & AOC) Killing kded5 fixes the problem Created attachment 135343 [details]
kscreen2 log after triggering dpms suspend
(In reply to Reuben from comment #7) > Apparently this is a bug in DRM: > https://gitlab.freedesktop.org/drm/amd/-/issues/662 this issue disappears if i disable kscreen2 service. i can also confirm that that my monitors go to sleep normally if i leave the login screen (SDDM) idling. seems like the issue only happens after login when kscreen2 starts are we sure it's an AMD driver issue? sorry i'm new to all this. please let me know if there are logs i should post. i had a look at journalctl after i triggered a manual "xset dpms force suspend" attached log here: https://bugsfiles.kde.org/attachment.cgi?id=135343 let me know if that helps Can confirm disabling Kscreen 2 solves the issue, both on Fedora and Kubuntu. Monitor stays asleep until I move the mouse or touch a key. Confirming with latest KDE Neon (5.24.1). For me this issue appears only when I connect my HDMI monitor via USB-C hub (which is used for all comms + power delivery). When I connect the monitor directly everything works okay, and it does go to powersave mode. Disabling and stopping KScreen 2 in background jobs solves the issue. Also, this is kind of known issue: https://www.reddit.com/r/kde/comments/ewbqst/display_doesnt_sleep_in_power_save_mode/ https://www.reddit.com/r/kde/comments/cnef1v/kde_doesnt_sleep_or_turn_off_monitor_when_inactive/ A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/2940 Same issue. Fixed by disabling Kscreen 2 background service. May not be the best solution, but it works. Git commit 482a1f0fb5bddb6d376a6b8d39a04bc16786cc97 by Xaver Hugl. Committed on 27/09/2023 at 00:02. Pushed by zamundaaa into branch 'master'. backends/drm: don't wake displays up when outputs get temporarily removed When some displays go to sleep, that can be wrongly detected as a temporary hotunplug by the driver. In order to not wrongly wake up the system with such a display, detect that scenario and set the 'new' output to dpms off again. Related: bug 452553 M +22 -0 src/backends/drm/drm_backend.cpp M +1 -1 src/backends/drm/drm_backend.h M +3 -0 src/workspace.cpp https://invent.kde.org/plasma/kwin/-/commit/482a1f0fb5bddb6d376a6b8d39a04bc16786cc97 *** Bug 475662 has been marked as a duplicate of this bug. *** *** Bug 475829 has been marked as a duplicate of this bug. *** Is there a chance that the fix would be backported to Plasma LTS 5.27.*? Created attachment 166903 [details]
journalctl -t kwin_wayland -t org_kde_powerdevil -t ksmserver after kscreen-doctor -d off
Still happens with plasma 6.0.1
*** This bug has been marked as a duplicate of bug 480026 *** |
Created attachment 105324 [details] kscreen log when external monitor goes to sleep My laptop is in docking station with external monitor connected (HDMI-2 in the log). Laptop screen is turned off, external monitor is the only output. When external monitor goes to sleep (either automatically after inactivity or with xset dpms force off) it turns off and enables back again right after. The issue is that KScreen kded turns it back on. Unloading kscreen kded module fixes the issue.