Summary: | Crash in KWin::DrmGpu::presentationClock | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | CodeBreaker <corroding.worsening266> |
Component: | general | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | bashing.serene.0v, bugs.opponent007, kde, kdedev, nate, postix, wacko |
Priority: | NOR | Keywords: | drkonqi |
Version First Reported In: | 6.2.4 | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/kwin/-/commit/da5e9b02dacacdeea274a6214660f646268ed29a | Version Fixed In: | 6.3.0 |
Sentry Crash Report: | https://crash-reports.kde.org/organizations/kde/issues/4603/events/05c40bbbf68440aeaafe20d64247b736/ |
Description
CodeBreaker
2024-12-07 23:34:12 UTC
*** Bug 498319 has been marked as a duplicate of this bug. *** *** Bug 498776 has been marked as a duplicate of this bug. *** A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/7031 Git commit c79ef9055f3b6717d0660998c1997dac9199eabb by Xaver Hugl. Committed on 17/01/2025 at 14:22. Pushed by zamundaaa into branch 'master'. backends/drm: asynchronously wait for idle before doing modesets The previous code relied on waitIdle() *always* working, which isn't the case. Sometimes, weird kernel bugs can make the timeout trigger wrongly, and sometimes, the kernel just doesn't send a pageflip event in a reasonable time frame or at all. This should fix at least most cases from https://crash-reports.kde.org/share/issue/c27bccb6794a48349b42b70a4e655619/ M +24 -11 src/backends/drm/drm_gpu.cpp M +4 -2 src/backends/drm/drm_gpu.h M +3 -2 src/backends/drm/drm_output.cpp M +5 -2 src/backends/drm/drm_pipeline.cpp M +1 -1 src/backends/drm/drm_pipeline.h https://invent.kde.org/plasma/kwin/-/commit/c79ef9055f3b6717d0660998c1997dac9199eabb *** Bug 499036 has been marked as a duplicate of this bug. *** Git commit da5e9b02dacacdeea274a6214660f646268ed29a by Xaver Hugl. Committed on 10/02/2025 at 17:21. Pushed by zamundaaa into branch 'Plasma/6.3'. backends/drm: asynchronously wait for idle before doing modesets The previous code relied on waitIdle() *always* working, which isn't the case. Sometimes, weird kernel bugs can make the timeout trigger wrongly, and sometimes, the kernel just doesn't send a pageflip event in a reasonable time frame or at all. This should fix at least most cases from https://crash-reports.kde.org/share/issue/c27bccb6794a48349b42b70a4e655619/ (cherry picked from commit c79ef9055f3b6717d0660998c1997dac9199eabb) Co-authored-by: Xaver Hugl <xaver.hugl@gmail.com> M +24 -11 src/backends/drm/drm_gpu.cpp M +4 -2 src/backends/drm/drm_gpu.h M +3 -2 src/backends/drm/drm_output.cpp M +5 -2 src/backends/drm/drm_pipeline.cpp M +1 -1 src/backends/drm/drm_pipeline.h https://invent.kde.org/plasma/kwin/-/commit/da5e9b02dacacdeea274a6214660f646268ed29a |