| Summary: | Connecting to WiFi 6 Fails and makes Plasma crash in KNotification::KNotification | ||
|---|---|---|---|
| Product: | [Plasma] plasmashell | Reporter: | Matias Barletta <mrb> |
| Component: | Notifications | Assignee: | Plasma Bugs List <plasma-bugs-null> |
| Status: | RESOLVED WORKSFORME | ||
| Severity: | crash | CC: | dvratil, kde, nate |
| Priority: | NOR | Keywords: | drkonqi |
| Version First Reported In: | 6.2.4 | ||
| Target Milestone: | 1.0 | ||
| Platform: | unspecified | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | New crash information added by DrKonqi | ||
|
Description
Matias Barletta
2024-12-20 23:50:37 UTC
Created attachment 176798 [details]
New crash information added by DrKonqi
DrKonqi auto-attaching complete backtrace.
Thread 1 (Thread 0x791039b44000 (LWP 18882)):
[KCrash Handler]
#6 0x000079103fe0f875 in check_parent_thread (currentThreadData=0x619fe8b09ae0, parentThreadData=<optimized out>, parent=0x7910340b5b50) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qobject.cpp:912
#7 QObject::QObject (this=<optimized out>, dd=..., parent=<optimized out>, this=<optimized out>, dd=..., parent=<optimized out>) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qobject.cpp:956
#8 0x000079103f957bc3 in KNotification::KNotification (this=<optimized out>, eventId=..., flags=..., parent=<optimized out>, this=<optimized out>, eventId=..., flags=..., parent=<optimized out>) at /usr/src/kf6-knotifications-6.9.0-0zneon+24.04+noble+release+build8/src/knotification.cpp:83
#9 0x0000790fe176617f in Handler::addAndActivateConnectionDBus(_ZN7Handler28addAndActivateConnectionDBusERK4QMapI7QStringS0_IS1_8QVariantEERKS1_S8_.Frame *) (frame_ptr=0x619ff43912b0) at /usr/src/plasma-nm-4:6.2.4-0zneon+24.04+noble+release+build10/libs/handler.cpp:438
#10 0x0000790fe1772c31 in std::__n4861::coroutine_handle<void>::resume (this=<optimized out>) at /usr/include/c++/13/coroutine:135
#11 QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}::operator()<QDBusPendingCallWatcher>(QDBusPendingCallWatcher*) (watcher=0x619ff434c700, __closure=<optimized out>) at /usr/include/qcoro6/qcoro/qcorodbuspendingreply.h:43
#12 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusPendingCallWatcher*>, void, QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}>::call(QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}&, void**)::{lambda()#1}::operator()() const (__closure=<optimized out>) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:141
#13 QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusPendingCallWatcher*>, void, QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}>::call(QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}&, void**)::{lambda()#1}>(void**, QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusPendingCallWatcher*>, void, QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}>::call(QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}&, void**)::{lambda()#1}&&) (fn=..., args=<optimized out>) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:65
#14 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusPendingCallWatcher*>, void, QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}>::call(QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}&, void**) (arg=<optimized out>, f=...) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:140
#15 QtPrivate::FunctorCallable<QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}, QDBusPendingCallWatcher*>::call<QtPrivate::List<QDBusPendingCallWatcher*>, void>(QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}&, void*, void**) (arg=<optimized out>, f=...) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:362
#16 QtPrivate::QCallableObject<QCoro::detail::QCoroDBusPendingReply<QDBusObjectPath, QDBusObjectPath>::WaitForFinishedOperation::await_suspend(std::__n4861::coroutine_handle<void>)::{lambda(auto:1*)#1}, QtPrivate::List<QDBusPendingCallWatcher*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=<optimized out>, this_=<optimized out>, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:572
#17 0x000079103fe7ada9 in QtPrivate::QSlotObjectBase::call (a=<optimized out>, r=<optimized out>, this=<optimized out>, this=<optimized out>, r=<optimized out>, a=<optimized out>) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qobjectdefs_impl.h:486
#18 doActivate<false> (sender=0x619ff434c700, signal_index=3, argv=0x7ffd12e7c170) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qobject.cpp:4124
#19 0x00007910401b4601 in QDBusPendingCallWatcher::finished (this=<optimized out>, _t1=<optimized out>) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/obj-x86_64-linux-gnu/src/dbus/DBus_autogen/include/moc_qdbuspendingcall.cpp:163
#20 0x000079103fe108fd in QObject::event (this=0x619ff434c700, e=0x7910340bc9a0) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qobject.cpp:1419
#21 0x00007910421fff48 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x619ff434c700, e=0x7910340bc9a0) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/widgets/kernel/qapplication.cpp:3296
#22 0x000079103feb5718 in QCoreApplication::notifyInternal2 (receiver=0x619ff434c700, event=0x7910340bc9a0) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qcoreapplication.cpp:1168
#23 0x000079103feb575d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qcoreapplication.cpp:1612
#24 0x000079103feb8242 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x619fe8b09ae0) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qcoreapplication.cpp:1968
#25 0x000079103fc725cf in postEventSourceDispatch (s=0x619fe8b58d30) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qeventdispatcher_glib.cpp:246
#26 0x000079103e6db5b5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#27 0x000079103e73a717 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#28 0x000079103e6daa53 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#29 0x000079103fc702cf in QEventDispatcherGlib::processEvents (this=0x619fe8b15d10, flags=...) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#30 0x000079103fec1aeb in QEventLoop::exec (this=0x7ffd12e7c620, flags=...) at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/global/qflags.h:34
#31 0x000079103feb8c2d in QCoreApplication::exec () at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/corelib/global/qflags.h:74
#32 0x00007910404d6fbd in QGuiApplication::exec () at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/gui/kernel/qguiapplication.cpp:1975
#33 0x00007910421f9069 in QApplication::exec () at /usr/src/qt6-base-6.8.1-0zneon+24.04+noble+release+build38/src/widgets/kernel/qapplication.cpp:2564
#34 0x0000619fe1b060de in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/plasma-workspace-4:6.2.4-0zneon+24.04+noble+release+build18/shell/main.cpp:192
Crashing while trying to show a notification, apparently. Do you experience any other crashes when different notifications appear? Does this issue continue to happen in a new clean user account on the same system? Could be caused by the Handler object being destroyed while awaiting the DBus response. Once the response arrives, the coroutine is resumed and crash then occurs when the code tries to deterrence `this`, which is a dangling pointer at that point. 🐛🧹 ⚠️ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME. For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging. Thank you for helping us make KDE software even better for everyone! 🐛🧹 This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME. |