| Summary: | kwin_x11 crashed at KWin::Compositor::compositingToggled when I alt+tabbed from a game | ||
|---|---|---|---|
| Product: | [Plasma] kwin | Reporter: | Fushan Wen <qydwhotmail> |
| Component: | compositing | Assignee: | KWin default assignee <kwin-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | Keywords: | drkonqi, qt6 |
| Priority: | NOR | Flags: | qydwhotmail:
X11+
|
| Version First Reported In: | master | ||
| Target Milestone: | --- | ||
| Platform: | openSUSE | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/plasma/kwin/-/commit/3a37f8dbb29daad31a340cd5b69b3c932a910240 | Version Fixed/Implemented In: | |
| Sentry Crash Report: | |||
Please provide a backtrace with debug symbols #0 0x00007f3408a91dec in __pthread_kill_implementation () at /lib64/libc.so.6
#1 0x00007f3408a3f0c6 in raise () at /lib64/libc.so.6
#2 0x00007f340c63cb93 in KCrash::defaultCrashHandler(int) () at /lib64/libKF6Crash.so.6
#3 0x00007f3408a3f190 in <signal handler called> () at /lib64/libc.so.6
#4 0x00007f340c1c930f in KWin::useGlThumbnails ()
at /usr/src/debug/kwin-5.91.90git.20240113T223915~1fd5a655/src/scripting/windowthumbnailitem.cpp:36
#5 KWin::WindowThumbnailItem::updateSource() (this=0x564a19530c20)
at /usr/src/debug/kwin-5.91.90git.20240113T223915~1fd5a655/src/scripting/windowthumbnailitem.cpp:282
#6 0x00007f34093da613 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=0x7ffc0625a090, r=0x564a19530c20, this=0x564a194e1b90)
at /usr/src/debug/qtbase-everywhere-src-6.6.1/build/include/QtCore/../../../src/corelib/kernel/qobjectdefs_impl.h:433
#7 doActivate<false>(QObject*, int, void**) (sender=0x564a18080db0, signal_index=3, argv=0x7ffc0625a090)
at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qobject.cpp:4021
#8 0x00007f340c038a9f in KWin::Compositor::compositingToggled(bool)
(this=this@entry=0x564a18080db0, _t1=<optimized out>, _t1@entry=false)
at /usr/src/debug/kwin-5.91.90git.20240113T223915~1fd5a655/build/src/kwin_autogen/include/moc_compositor.cpp:245
#9 0x00007f340c03eee0 in KWin::X11Compositor::stop() (this=0x564a18080db0)
at /usr/src/debug/kwin-5.91.90git.20240113T223915~1fd5a655/src/compositor_x11.cpp:402
#10 KWin::X11Compositor::stop() (this=0x564a18080db0)
at /usr/src/debug/kwin-5.91.90git.20240113T223915~1fd5a655/src/compositor_x11.cpp:359
#11 0x00007f34093ca96e in QObject::event(QEvent*) (this=0x564a18080db0, e=0x564a195a3ab0)
at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qobject.cpp:1437
#12 0x00007f340a5c094e in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt6Widgets.so.6
#13 0x00007f3409387268 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x564a18080db0, event=0x564a195a3ab0)
at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1121
#14 0x00007f34093872a9 in QCoreApplication::sendEvent(QObject*, QEvent*)
(receiver=<optimized out>, event=<optimized out>)
at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1539
#15 0x00007f34093875c7 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*)
(receiver=0x0, event_type=0, data=0x564a17cadf10)
at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1901
#16 0x00007f34095a5d83 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x564a17d84590)
at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qeventdispatcher_glib.cpp:243
#17 0x00007f3408313f30 in () at /lib64/libglib-2.0.so.0
#18 0x00007f3408315b58 in () at /lib64/libglib-2.0.so.0
#19 0x00007f340831620c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#20 0x00007f34095ab12c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x564a17d5bd40, flags=...)
at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qeventdispatcher_glib.cpp:393
#21 0x00007f3409391adb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x7ffc0625a4d0, flags=...)
at /usr/src/debug/qtbase-everywhere-src-6.6.1/build/include/QtCore/../../../src/corelib/global/qflags.h:34
#22 0x00007f340938b706 in QCoreApplication::exec() ()
at /usr/src/debug/qtbase-everywhere-src-6.6.1/build/include/QtCore/../../../src/corelib/global/qflags.h:74
#23 0x0000564a1783e0b0 in ()
#24 0x00007f3408a281b0 in __libc_start_call_main () at /lib64/libc.so.6
#25 0x00007f3408a28279 in __libc_start_main_impl () at /lib64/libc.so.6
#26 0x0000564a178424a5 in ()
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/4927 Git commit 4f8c941bff507bf1e1baaf9ab13e141a8e61a316 by Vlad Zahorodnii. Committed on 15/01/2024 at 15:07. Pushed by vladz into branch 'master'. scripting: Fix a crash in useGlThumbnails() when compositing is off M +1 -1 src/scripting/windowthumbnailitem.cpp https://invent.kde.org/plasma/kwin/-/commit/4f8c941bff507bf1e1baaf9ab13e141a8e61a316 Git commit 3a37f8dbb29daad31a340cd5b69b3c932a910240 by Vlad Zahorodnii. Committed on 15/01/2024 at 15:24. Pushed by vladz into branch 'Plasma/6.0'. scripting: Fix a crash in useGlThumbnails() when compositing is off (cherry picked from commit 4f8c941bff507bf1e1baaf9ab13e141a8e61a316) M +1 -1 src/scripting/windowthumbnailitem.cpp https://invent.kde.org/plasma/kwin/-/commit/3a37f8dbb29daad31a340cd5b69b3c932a910240 |
SUMMARY When I press Alt+Tab to switch from a fullscreen game window, kwin_x11 often crashes. STEPS TO REPRODUCE 1. Start "Haunted House" from Steam with Proton Experimental 2. Set the game window to fullscreen 3. Press Alt+Tab OBSERVED RESULT The window decoration sometimes disappears, which means kwin_x11 sometimes crashes. EXPECTED RESULT No crash SOFTWARE/OS VERSIONS Windows: macOS: Linux/KDE Plasma: (available in About System) KDE Plasma Version: 6.0 RC1 KDE Frameworks Version: Qt Version: 6.6.1 ADDITIONAL INFORMATION (gdb) bt #0 0x00007f55ae491dec in __pthread_kill_implementation () at /lib64/libc.so.6 #1 0x00007f55ae43f0c6 in raise () at /lib64/libc.so.6 #2 0x00007f55b20fdb93 in KCrash::defaultCrashHandler(int) () at /lib64/libKF6Crash.so.6 #3 0x00007f55ae43f190 in <signal handler called> () at /lib64/libc.so.6 #4 0x00007f55b1bc6f2f in () at /lib64/libkwin.so.6 #5 0x00007f55aedda613 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffd610630b0, r=0x564e038482c0, this=0x564e03e27d50) at /usr/src/debug/qtbase-everywhere-src-6.6.1/build/include/QtCore/../../../src/corelib/kernel/qobjectdefs_impl.h:433 #6 doActivate<false>(QObject*, int, void**) (sender=0x564e02986b70, signal_index=3, argv=0x7ffd610630b0) at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qobject.cpp:4021 #7 0x00007f55b1a38a7f in KWin::Compositor::compositingToggled(bool) () at /lib64/libkwin.so.6 #8 0x00007f55b1a3eec0 in KWin::X11Compositor::stop() () at /lib64/libkwin.so.6 #9 0x00007f55aedca96e in QObject::event(QEvent*) (this=0x564e02986b70, e=0x564e02975120) at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qobject.cpp:1437 #10 0x00007f55affc094e in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt6Widgets.so.6 #11 0x00007f55aed87268 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x564e02986b70, event=0x564e02975120) at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1121 #12 0x00007f55aed872a9 in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1539 #13 0x00007f55aed875c7 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x564e0258df10) at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qcoreapplication.cpp:1901 #14 0x00007f55aefa5d83 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x564e0266ab40) at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qeventdispatcher_glib.cpp:243 #15 0x00007f55add13f30 in () at /lib64/libglib-2.0.so.0 #16 0x00007f55add15b58 in () at /lib64/libglib-2.0.so.0 #17 0x00007f55add1620c in g_main_context_iteration () at /lib64/libglib-2.0.so.0 --Type <RET> for more, q to quit, c to continue without paging--c #18 0x00007f55aefab12c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x564e0263ea00, flags=...) at /usr/src/debug/qtbase-everywhere-src-6.6.1/src/corelib/kernel/qeventdispatcher_glib.cpp:393 #19 0x00007f55aed91adb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7ffd610634f0, flags=...) at /usr/src/debug/qtbase-everywhere-src-6.6.1/build/include/QtCore/../../../src/corelib/global/qflags.h:34 #20 0x00007f55aed8b706 in QCoreApplication::exec() () at /usr/src/debug/qtbase-everywhere-src-6.6.1/build/include/QtCore/../../../src/corelib/global/qflags.h:74 #21 0x0000564e020b50b0 in () #22 0x00007f55ae4281b0 in __libc_start_call_main () at /lib64/libc.so.6 #23 0x00007f55ae428279 in __libc_start_main_impl () at /lib64/libc.so.6 #24 0x0000564e020b94a5 in ()