SUMMARY When powersaving turns screen off, and user starts using the PC after a while (screen turning back on), opening Kickoff few times rapidly will crash plasmashell. Unsure if this is because of using fullscreen Kickoff, or if it happens with all of them. STEPS TO REPRODUCE 1. Let screen turn off either by waiting or running `kscreen-doctor -d off` in terminal 2. Wait couple more minutes to make sure screen is actually off 3. Move mouse to turn screen back on 4. Open kickoff menu rapidly multiple times OBSERVED RESULT Plasmashell crashes EXPECTED RESULT No crashes SOFTWARE/OS VERSIONS Operating System: Fedora Linux 39 KDE Plasma Version: 5.90.90 KDE Frameworks Version: 5.247.0 Qt Version: 6.6.0 Kernel Version: 6.6.6-200.fc39.x86_64 (64-bit) Graphics Platform: Wayland Processors: 12 × AMD Ryzen 5 3600 6-Core Processor Memory: 15.5 GiB of RAM Graphics Processor: AMD Radeon RX 6600 ADDITIONAL INFORMATION Using kdesrc-build workspace Backtrace: #0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44 44 return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0; [Current thread is 1 (Thread 0x7f07de725240 (LWP 102726))] (gdb) bt #0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44 #1 0x00007f07e2aae8a3 in __pthread_kill_internal (signo=11, threadid=<optimized out>) at pthread_kill.c:78 #2 0x00007f07e2a5c8ee in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26 #3 0x00007f07e6f96f44 in KCrash::defaultCrashHandler (sig=11) at /home/akseli/Repositories/kde/src/kcrash/src/kcrash.cpp:586 #4 0x00007f07e2a5c9a0 in <signal handler called> () at /lib64/libc.so.6 #5 0x000000000043ef69 in WaylandAutoHideScreenEdge::create (this=0x2b07300) at /home/akseli/Repositories/kde/src/plasma-workspace/shell/autohidescreenedge.cpp:148 #6 0x000000000043ed9b in WaylandAutoHideScreenEdge::eventFilter (this=0x2b07300, watched=0x3a07380, event=0x7ffc49249840) at /home/akseli/Repositories/kde/src/plasma-workspace/shell/autohidescreenedge.cpp:105 #7 0x00007f07e31a092e in QCoreApplicationPrivate::sendThroughObjectEventFilters (receiver=receiver@entry=0x3a07380, event=event@entry=0x7ffc49249840) at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/corelib/kernel/qcoreapplication.cpp:1250 #8 0x00007f07e5bc2b28 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x3a07380, e=0x7ffc49249840) at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/widgets/kernel/qapplication.cpp:3284 #9 0x00007f07e31a0ba8 in QCoreApplication::notifyInternal2 (receiver=0x3a07380, event=0x7ffc49249840) at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/corelib/kernel/qcoreapplication.cpp:1118 #10 0x00007f07e31a0dbd in QCoreApplication::sendSpontaneousEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/corelib/kernel/qcoreapplication.cpp:1550 #11 0x00007f07e3a0a1ad in QGuiApplicationPrivate::processExposeEvent (e=0x37c8f50) at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/gui/kernel/qguiapplication.cpp:3276 #12 0x00007f07e3a67c1c in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/gui/kernel/qwindowsysteminterface.cpp:1109 --Type <RET> for more, q to quit, c to continue without paging--c #13 0x00007f07e3f3ff14 in userEventSourceDispatch (source=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/gui/platform/unix/qeventdispatcher_glib.cpp:38 #14 0x00007f07e2182e5c in g_main_dispatch (context=0x7f07cc000ef0) at ../glib/gmain.c:3476 #15 g_main_context_dispatch_unlocked (context=0x7f07cc000ef0) at ../glib/gmain.c:4284 #16 0x00007f07e21ddf18 in g_main_context_iterate_unlocked.isra.0 (context=context@entry=0x7f07cc000ef0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4349 #17 0x00007f07e2180ad3 in g_main_context_iteration (context=0x7f07cc000ef0, may_block=1) at ../glib/gmain.c:4414 #18 0x00007f07e344096f in QEventDispatcherGlib::processEvents (this=0x19ddb20, flags=...) at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:393 #19 0x00007f07e31ad9bb in QEventLoop::exec (this=this@entry=0x7ffc49249b80, flags=..., flags@entry=...) at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/corelib/global/qflags.h:34 #20 0x00007f07e31a97bd in QCoreApplication::exec () at /usr/src/debug/qt6-qtbase-6.6.0-6.fc39.x86_64/src/corelib/global/qflags.h:74 #21 0x000000000044283e in main (argc=2, argv=0x7ffc4924a808) at /home/akseli/Repositories/kde/src/plasma-workspace/shell/main.cpp:214
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/3695
Git commit 65cf607857e516d0335058ff49909052a154b1da by Akseli Lahtinen. Committed on 18/12/2023 at 17:23. Pushed by akselmo into branch 'master'. Fix kickoff crashing plasmashell after screen turnoff If kickoff was opened rapidly after screen turned off, it would crash. This fixes it. M +1 -1 shell/autohidescreenedge.cpp https://invent.kde.org/plasma/plasma-workspace/-/commit/65cf607857e516d0335058ff49909052a154b1da