| Summary: | After the display turns off and back on again, the system is interactive but the screen doesn't update for 30 seconds | ||
|---|---|---|---|
| Product: | [Plasma] kwin | Reporter: | tealdislike <bugs.kde.org.crewless602> |
| Component: | wayland-generic | Assignee: | KWin default assignee <kwin-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | nate, postix, tobiaspotocek, xaver.hugl, yule2000 |
| Priority: | NOR | ||
| Version First Reported In: | 6.1.4 | ||
| Target Milestone: | --- | ||
| Platform: | Arch Linux | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/plasma/kwin/-/commit/d812f34b993c94ed3e81b53a0d788b9d25cf3a6c | Version Fixed/Implemented In: | 6.2.0 |
| Sentry Crash Report: | |||
|
Description
tealdislike
2024-08-25 14:44:09 UTC
What kind of screen is it? And is there just one, or are there more than one plugged in? (In reply to Nate Graham from comment #1) > What kind of screen is it? And is there just one, or are there more than one > plugged in? Only one monitor (AOC 24G2W1G3) is plugged in with a DP cable, running at 165 Hz with Freesync off, no color profile, 100% scale. Correction, the mouse and keyboard inputs are registered, only the graphics don't update. Thanks! > kwin_wayland_drm: No drm events for gpu "/dev/dri/card1" within last 30 seconds
This is the culprit: KWin has a blocking wait for pending presentation requests to finish before it changes display configurations (like turning the display on). For some reason this never finishes for you, so it just blocks until it hits the timeout.
(In reply to Zamundaaa from comment #5) Is there any way to try and get to the source of the issue? If I remember correctly, it first appeared some time after plasma 6.0 release, though I'm not sure exactly when. A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/6346 I think it should be fixed by that MR, but it would be great if you could test and verify that it actually fixes the problem Awesome! I will try to test it tomorrow. Unfurtunately I was unable to compile from source or using kdesrc-build (even standard branch, whichever it tries to build by default). I will be able to try this fix once it gets to kde-unstable repos or to arch main repos and will report if the issue is fixed. I don't have the time to figure how to get through these errors currently. Git commit 33ad107fa15999f66f4ca9d272c711b8a7080c68 by Xaver Hugl. Committed on 17/09/2024 at 13:48. Pushed by zamundaaa into branch 'master'. backends/drm: fix an edge case for DrmGpu::waitIdle Polling for drm events works for waiting on pageflip events, but if there's commits scheduled for future submission, and that fails, no pageflip will ever arrive. To fix that, this commit ensures at least one commit is actually submitted to the kernel before polling for pageflip events. M +17 -0 src/backends/drm/drm_commit_thread.cpp M +8 -0 src/backends/drm/drm_commit_thread.h M +4 -3 src/backends/drm/drm_gpu.cpp M +3 -3 src/backends/drm/drm_pipeline.cpp M +1 -1 src/backends/drm/drm_pipeline.h https://invent.kde.org/plasma/kwin/-/commit/33ad107fa15999f66f4ca9d272c711b8a7080c68 Git commit d812f34b993c94ed3e81b53a0d788b9d25cf3a6c by Xaver Hugl. Committed on 17/09/2024 at 14:22. Pushed by zamundaaa into branch 'Plasma/6.2'. backends/drm: fix an edge case for DrmGpu::waitIdle Polling for drm events works for waiting on pageflip events, but if there's commits scheduled for future submission, and that fails, no pageflip will ever arrive. To fix that, this commit ensures at least one commit is actually submitted to the kernel before polling for pageflip events. (cherry picked from commit 33ad107fa15999f66f4ca9d272c711b8a7080c68) Co-authored-by: Xaver Hugl <xaver.hugl@gmail.com> M +17 -0 src/backends/drm/drm_commit_thread.cpp M +8 -0 src/backends/drm/drm_commit_thread.h M +4 -3 src/backends/drm/drm_gpu.cpp M +3 -3 src/backends/drm/drm_pipeline.cpp M +1 -1 src/backends/drm/drm_pipeline.h https://invent.kde.org/plasma/kwin/-/commit/d812f34b993c94ed3e81b53a0d788b9d25cf3a6c *** Bug 490664 has been marked as a duplicate of this bug. *** I just installed the Plasme 6.2 update and tested it. The issue seems to be fixed now, thanks! I have waited a little, but now after a month it seems that the freezes are indeed gone. Kudos to the devs 👏 |