https://bugs.kde.org/show_bug.cgi?id=478970
--- Comment #2 from Matt Fagnani <matt.fagn...@bell.net> --- Created attachment 164433 --> https://bugs.kde.org/attachment.cgi?id=164433&action=edit Full trace of all threads of plasmawindowed crash in QObject::parent plasmawindowed org.kde.plasma.kickoff crashed when closing with a different trace in QObject::parent. The crash might've been a null pointer dereference since QObject::parent had this=0x0. Core was generated by `plasmawindowed org.kde.plasma.kickoff'. Program terminated with signal SIGSEGV, Segmentation fault. #0 QObject::parent (this=0x0) at /usr/include/qt6/QtCore/qscopedpointer.h:90 Downloading source file /usr/include/qt6/QtCore/qscopedpointer.h 90 T *operator->() const noexcept [Current thread is 1 (Thread 0x7fbed19f9b80 (LWP 13870))] Missing separate debuginfos, use: dnf debuginfo-install plasma-workspace-5.91.0-2.fc40.x86_64 (gdb) bt #0 QObject::parent (this=0x0) at /usr/include/qt6/QtCore/qscopedpointer.h:90 #1 Plasma::Applet::containment (this=<optimized out>) at /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasma/applet.cpp:733 #2 0x00007fbed3210af3 in Plasma::AppletPrivate::mainConfigGroup (this=0x5603941b7b40) at /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasma/private/applet_p.cpp:514 #3 0x00007fbed31eeea5 in Plasma::AppletPrivate::mainConfigGroup (this=<optimized out>) at /usr/include/qt6/QtCore/qarraydatapointer.h:413 #4 Plasma::Applet::config (this=0x5603941ac5b0) at /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasma/applet.cpp:205 #5 0x00007fbed3273f8f in PlasmaQuick::AppletQuickItem::~AppletQuickItem (this=<optimized out>, this=<optimized out>) at /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasmaquick/appletquickitem.cpp:459 #6 0x00007fbed32750e2 in PlasmoidItem::~PlasmoidItem (this=<optimized out>, this=<optimized out>) at /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasmaquick/plasmoid/plasmoiditem.cpp:46 #7 QQmlPrivate::QQmlElement<PlasmoidItem>::~QQmlElement (this=<optimized out>, this=<optimized out>) at /usr/include/qt6/QtQml/qqmlprivate.h:99 #8 QQmlPrivate::QQmlElement<PlasmoidItem>::~QQmlElement (this=<optimized out>, this=<optimized out>) at /usr/include/qt6/QtQml/qqmlprivate.h:99 #9 0x00007fbed328e5d0 in PlasmaQuick::SharedQmlEngine::~SharedQmlEngine (this=<optimized out>, this=<optimized out>) at /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasmaquick/sharedqmlengine.cpp:153 #10 0x00007fbed328e685 in PlasmaQuick::SharedQmlEngine::~SharedQmlEngine (this=<optimized out>, this=<optimized out>) at /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasmaquick/sharedqmlengine.cpp:155 #11 0x00007fbed09fa92d in QObjectPrivate::deleteChildren (this=this@entry=0x5603941ade50) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qobject.cpp:2206 #12 0x00007fbed09fef68 in QObject::~QObject (this=<optimized out>, __in_chrg=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qobject.cpp:1159 #13 0x00007fbed31ea135 in Plasma::Applet::~Applet (this=<optimized out>, this=<optimized out>) at /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasma/applet.cpp:90 #14 0x00007fbed09f3629 in QObject::event (this=0x5603941ac5b0, e=0x7fbe7cf5e620) --Type <RET> for more, q to quit, c to continue without paging--c at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qobject.cpp:1424 #15 0x00007fbed1bc3168 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5603941ac5b0, e=0x7fbe7cf5e620) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/widgets/kernel/qapplication.cpp:3296 #16 0x00007fbed09a0e08 in QCoreApplication::notifyInternal2 (receiver=0x5603941ac5b0, event=0x7fbe7cf5e620) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1121 #17 0x00007fbed09a100d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1539 #18 0x00007fbed09a4d05 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x560393dceb60) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1901 #19 0x00007fbed09a507d in QCoreApplication::sendPostedEvents (receiver=<optimized out>, event_type=<optimized out>) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1760 #20 0x00007fbed0c6daef in postEventSourceDispatch (s=0x560393e5c8e0) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:243 #21 0x00007fbecf614e5c in g_main_dispatch (context=0x7fbeb8000ef0) at ../glib/gmain.c:3476 #22 g_main_context_dispatch_unlocked (context=0x7fbeb8000ef0) at ../glib/gmain.c:4284 #23 0x00007fbecf66ff18 in g_main_context_iterate_unlocked.isra.0 (context=context@entry=0x7fbeb8000ef0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4349 #24 0x00007fbecf612ad3 in g_main_context_iteration (context=0x7fbeb8000ef0, may_block=1) at ../glib/gmain.c:4414 #25 0x00007fbed0c6d39f in QEventDispatcherGlib::processEvents (this=0x560393dd5590, flags=...) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:393 #26 0x00007fbed09adbcb in QEventLoop::exec (this=this@entry=0x7ffec341ab20, flags=..., flags@entry=...) at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/global/qflags.h:34 #27 0x00007fbed09a99cd in QCoreApplication::exec () at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/corelib/global/qflags.h:74 #28 0x00007fbed11fa05d in QGuiApplication::exec () at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/gui/kernel/qguiapplication.cpp:1925 #29 0x00007fbed1bc30d9 in QApplication::exec () at /usr/src/debug/qt6-qtbase-6.6.1-1.fc40.x86_64/src/widgets/kernel/qapplication.cpp:2574 #30 0x0000560393c1149b in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace-5.91.0-2.fc40.x86_64/plasma-windowed/main.cpp:78 Plasma::AppletPrivate::mainConfigGroup in frame 2 had a null q pointer and ran q->containment() so that might be where the null pointer was from. (gdb) frame 2 #2 0x00007fbed3210af3 in Plasma::AppletPrivate::mainConfigGroup (this=0x5603941b7b40) at /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasma/private/applet_p.cpp:514 Downloading source file /usr/src/debug/libplasma-5.91.0-1.fc40.x86_64/src/plasma/private/applet_p.cpp 514 Containment *c = q->containment(); (gdb) p q The invalid reads and frees I saw with valgrind might've led to the different traces in a race condition depending on whether the memory corruption was detected by glibc or the crash in QObject::parent happened first. The full trace of all threads is attached. -- You are receiving this mail because: You are watching all bug changes.