Bug 452873 - kwin crashes after monitor goes to sleep, has very low frame rate after recovery
Summary: kwin crashes after monitor goes to sleep, has very low frame rate after recovery
Status: RESOLVED DUPLICATE of bug 448102
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: 5.24.4
Platform: Neon Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2022-04-22 16:40 UTC by verena
Modified: 2022-04-22 19:14 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description verena 2022-04-22 16:40:22 UTC
Application: kwin_x11 (5.24.4)

Qt Version: 5.15.3
Frameworks Version: 5.93.0
Operating System: Linux 5.17.3-051703-generic x86_64
Windowing System: X11
Distribution: KDE neon User - 5.24
DrKonqi: 5.24.4 [KCrashBackend]

-- Information about the crash:
- What I was doing when the application crashed:

I have two monitors connected (3840x2160 and 2560x1440). If they go to sleep, kwin crashes as soon as I resume working.


- Unusual behavior I noticed:

After the crash, the whole desktop lags very badly. Using the "Show FPS" desktop effect, KWin reports around 1-2 FPS.  CPU and Memory usage are normal, nothing stands out as unusually high.

The crash can be reproduced every time.

-- Backtrace:
Application: KWin (kwin_x11), signal: Segmentation fault

[New LWP 67233]
[New LWP 67235]
[New LWP 67236]
[New LWP 67256]
[New LWP 67270]
[New LWP 67274]
[New LWP 67285]
[New LWP 67286]
[New LWP 67502]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f684f9739cf in __GI___poll (fds=0x7ffe79b7b238, nfds=1, timeout=1000) at ../sysdeps/unix/sysv/linux/poll.c:29
__preamble__
____drkonqi_qmltrace_thread:1____
Failed to do pygdbmi parsing: No module named 'pygdbmi'
frame={level="0",func="constructor",file="/usr/share/kwin/scripts/bismuth/contents/code/index.mjs",fullname="/usr/share/kwin/scripts/bismuth/contents/code/index.mjs",line="1902",language="js"},".
---------------------------------
(beware that frames may have been optimized out)

[Current thread is 1 (Thread 0x7f684afe29c0 (LWP 67210))]

Thread 10 (Thread 0x7f682dfed700 (LWP 67502)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x7f67fd7c4550) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x7f67fd7c4500, cond=0x7f67fd7c4528) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x7f67fd7c4528, mutex=0x7f67fd7c4500) at pthread_cond_wait.c:638
#3  0x00007f684263a5eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f684263a1eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f6850605609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f684f980163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7f68177fe700 (LWP 67286)):
#0  0x00007f684f973ac6 in __ppoll (fds=0x7f6808000d98, nfds=1, timeout=<optimized out>, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:44
#1  0x00007f6850a5e559 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f6850a5fc03 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f6850a0687b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f6850820442 in QThread::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f6850821623 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f6850605609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007f684f980163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7f6817fff700 (LWP 67285)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x561a3e1c59d0) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x561a3e1c5980, cond=0x561a3e1c59a8) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x561a3e1c59a8, mutex=0x561a3e1c5980) at pthread_cond_wait.c:638
#3  0x00007f684263a5eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f684263a1eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f6850605609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f684f980163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f682ceaa700 (LWP 67274)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x561a3e0e7fc8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x561a3e0e7f78, cond=0x561a3e0e7fa0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x561a3e0e7fa0, mutex=0x561a3e0e7f78) at pthread_cond_wait.c:638
#3  0x00007f684263a5eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f684263a1eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f6850605609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f684f980163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f682d7ec700 (LWP 67270)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x7f68480b1554) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x7f68480b1500, cond=0x7f68480b1528) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x7f68480b1528, mutex=0x7f68480b1500) at pthread_cond_wait.c:638
#3  0x00007f684263a5eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f684263a1eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f6850605609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f684f980163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f682edee700 (LWP 67256)):
#0  0x00007f684f973ac6 in __ppoll (fds=0x7f6820000d78, nfds=1, timeout=<optimized out>, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:44
#1  0x00007f6850a5e559 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f6850a5fc03 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f6850a0687b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f6850820442 in QThread::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f6851900b39 in QQmlThreadPrivate::run (this=0x561a3e0b5d00) at qml/ftw/qqmlthread.cpp:155
#6  0x00007f6850821623 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f6850605609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#8  0x00007f684f980163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f683ccbe700 (LWP 67236)):
#0  0x00007f684f973ac6 in __ppoll (fds=0x7f68340070d8, nfds=1, timeout=<optimized out>, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:44
#1  0x00007f6850a5e559 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f6850a5fc03 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f6850a0687b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f6850820442 in QThread::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f6850577f4b in ?? () from /lib/x86_64-linux-gnu/libQt5DBus.so.5
#6  0x00007f6850821623 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f6850605609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#8  0x00007f684f980163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f6848da3700 (LWP 67235)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x561a3dde9f20) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x561a3dde9ed0, cond=0x561a3dde9ef8) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x561a3dde9ef8, mutex=0x561a3dde9ed0) at pthread_cond_wait.c:638
#3  0x00007f684263a5eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f684263a1eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f6850605609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f684f980163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f68495e4700 (LWP 67233)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x561a3de9afd8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x561a3de9af88, cond=0x561a3de9afb0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x561a3de9afb0, mutex=0x561a3de9af88) at pthread_cond_wait.c:638
#3  0x00007f684263a5eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f684263a1eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f6850605609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f684f980163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f684afe29c0 (LWP 67210)):
[KCrash Handler]
#4  0x00007f68526813a6 in KWin::Workspace::clientArea (this=0x561a3df84ea0, opt=KWin::PlacementArea, output=<optimized out>, desktop=<optimized out>) at ./src/workspace.cpp:2288
#5  0x00007f685268168e in KWin::Workspace::clientArea (this=<optimized out>, opt=<optimized out>, screen=<optimized out>, desktop=<optimized out>) at ./src/workspace.cpp:2344
#6  0x00007f68526304a3 in KWin::WorkspaceWrapper::clientArea (this=<optimized out>, option=<optimized out>, screen=<optimized out>, desktop=<optimized out>) at ./src/workspace.h:68
#7  0x00007f6852500d01 in KWin::WorkspaceWrapper::qt_static_metacall (_o=_o@entry=0x561a3e07eee0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=91, _a=_a@entry=0x7ffe79b7c220) at ./obj-x86_64-linux-gnu/src/kwin_autogen/7KDSW62DQT/moc_workspace_wrapper.cpp:676
#8  0x00007f685250fa63 in KWin::WorkspaceWrapper::qt_metacall (this=this@entry=0x561a3e07eee0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=91, _a=_a@entry=0x7ffe79b7c220) at ./obj-x86_64-linux-gnu/src/kwin_autogen/7KDSW62DQT/moc_workspace_wrapper.cpp:946
#9  0x00007f685250fb09 in KWin::DeclarativeScriptWorkspaceWrapper::qt_metacall (this=0x561a3e07eee0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7ffe79b7c220) at ./obj-x86_64-linux-gnu/src/kwin_autogen/7KDSW62DQT/moc_workspace_wrapper.cpp:1327
#10 0x00007f6851894105 in QQmlObjectOrGadget::metacall (this=this@entry=0x7ffe79b7c560, type=type@entry=QMetaObject::InvokeMetaMethod, index=<optimized out>, index@entry=96, argv=<optimized out>) at ../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/qml/ftw/qflagpointer_p.h:351
#11 0x00007f685175c7c5 in CallMethod (object=..., index=<optimized out>, returnType=returnType@entry=19, argCount=<optimized out>, argTypes=<optimized out>, engine=engine@entry=0x561a3e0bbee0, callArgs=<optimized out>, callType=<optimized out>) at jsruntime/qv4qobjectwrapper.cpp:1300
#12 0x00007f685175e8c7 in CallPrecise (object=..., data=..., engine=engine@entry=0x561a3e0bbee0, callArgs=callArgs@entry=0x7f683c07fa20, callType=callType@entry=QMetaObject::InvokeMetaMethod) at ../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/qml/qqmlpropertydata_p.h:285
#13 0x00007f685175faaf in CallOverloaded (callType=QMetaObject::InvokeMetaMethod, propertyCache=0x561a3e0bca40, callArgs=0x7f683c07fa20, engine=0x561a3e0bbee0, data=..., object=...) at jsruntime/qv4qobjectwrapper.cpp:1644
#14 QV4::QObjectMethod::callInternal (this=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at jsruntime/qv4qobjectwrapper.cpp:2132
#15 0x00007f685178f96b in QV4::FunctionObject::call (argc=3, argv=0x7f683c07f9d8, thisObject=0x7f683c07f9c0, this=0x7ffe79b7c6c8) at jsruntime/qv4functionobject_p.h:172
#16 QV4::Runtime::CallPropertyLookup::call (engine=0x561a3e0bbee0, base=..., index=<optimized out>, argv=0x7f683c07f9d8, argc=3) at jsruntime/qv4runtime.cpp:1460
#17 0x00007f6814014b71 in ?? ()
#18 0x0000000000000000 in ?? ()
[Inferior 1 (process 67210) detached]

Possible duplicates by query: bug 452850, bug 452505, bug 452482, bug 452433, bug 449957.

Reported using DrKonqi
Comment 1 verena 2022-04-22 16:44:23 UTC
So far, I was only successful in resolving the issue by rebooting the system. Running `kwin --replace` manually from a different TTY does visually restart kwin, but the FPS is still low. Restarting `plasmashell` does not help either.
Comment 2 verena 2022-04-22 16:53:38 UTC
I can reproduce the same issue by simply hitting the Shift + Alt + F12 shortcut. I'm not sure what it does exactly.

Before: 30fps
After: 1fps
Comment 3 Nate Graham 2022-04-22 19:14:15 UTC

*** This bug has been marked as a duplicate of bug 448102 ***