Bug 507838

Summary: Plasma crashed in TaskManager code on startup
Product: [Plasma] plasmashell Reporter: İsmail <ismailsahillioglu>
Component: Task Manager and Icons-Only Task Manager widgetsAssignee: Plasma Bugs List <plasma-bugs-null>
Status: REPORTED ---    
Severity: crash CC: kde, kdedev, nate, nicolas.fella, qydwhotmail
Priority: NOR Keywords: drkonqi
Version First Reported In: 6.4.3   
Target Milestone: 1.0   
Platform: CachyOS   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description İsmail 2025-08-04 06:09:58 UTC
Application: plasmashell (6.4.3)

ApplicationNotResponding [ANR]: false
Qt Version: 6.9.1
Frameworks Version: 6.16.0
Operating System: Linux 6.16.0-3.1-cachyos x86_64
Windowing System: Wayland
Distribution: CachyOS
DrKonqi: 6.4.3 [CoredumpBackend]

-- Information about the crash:
Plasma crashes on start up with a saved session. The session has the following apps launched:
- Dolphin
- Kate
- Vivaldi
- Zen browser

Ah, also before the last start up the system had fully upgraded and restarted. I think this might be one of the reasons of the crash.

The crash can be reproduced sometimes.

-- Backtrace (Reduced):
#5  0x00007f3991d6e19a in QDataStream::device (this=<optimized out>) at /usr/include/qt6/QtCore/qdatastream.h:435
#6  KServiceFactory::serviceOffers (this=0x56115ef837e0, serviceTypeOffset=83782, serviceOffersOffset=<optimized out>) at /usr/src/debug/kservice/kservice-6.16.0/src/services/kservicefactory.cpp:277
#7  0x00007f3991d675be in mimeTypeSycocaServiceOffers (mimeType=...) at /usr/src/debug/kservice/kservice-6.16.0/src/services/kapplicationtrader.cpp:45
#8  KApplicationTrader::queryByMimeType (mimeType=..., filterFunc=...) at /usr/src/debug/kservice/kservice-6.16.0/src/services/kapplicationtrader.cpp:79
#9  0x00007f3991d677b5 in KApplicationTrader::preferredService (mimeType=...) at /usr/src/debug/kservice/kservice-6.16.0/src/services/kapplicationtrader.cpp:89
#10 0x00007f3969cd7d65 in TaskManager::defaultApplication (url=...) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/tasktools.cpp:664
#11 0x00007f3969cd8e68 in TaskManager::appDataFromUrl (url=..., fallbackIcon=...) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/tasktools.cpp:152
#12 0x00007f3969ca4210 in TaskManager::LauncherTasksModel::Private::appData (this=0x56115b3ac550, url=...) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/launchertasksmodel.cpp:116
#13 0x00007f3969ca6342 in TaskManager::LauncherTasksModel::data (this=0x56115b3ac520, index=..., role=293) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/launchertasksmodel.cpp:296
#14 0x00007f398f5f909c in QModelIndex::data (this=<optimized out>, arole=<optimized out>, this=<optimized out>, arole=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/itemmodels/qabstractitemmodel.h:518
#15 QConcatenateTablesProxyModel::data (this=<optimized out>, index=..., role=293) at /usr/src/debug/qt6-base/qtbase/src/corelib/itemmodels/qconcatenatetablesproxymodel.cpp:191
#16 0x00007f3969cb4b98 in QModelIndex::data (this=this@entry=0x7ffcbe56c7c0, arole=arole@entry=293) at /usr/include/qt6/QtCore/qabstractitemmodel.h:518
#17 0x00007f3969cba09d in TaskManager::TaskFilterProxyModel::acceptsRow (this=0x56115b3698c0, sourceRow=9) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/taskfilterproxymodel.cpp:333
#18 0x00007f398f603929 in QSortFilterProxyModelPrivate::filterAcceptsRowInternal (this=0x56115b3698f0, source_row=9, source_parent=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/itemmodels/qsortfilterproxymodel.cpp:403
#19 0x00007f398f614c7d in QSortFilterProxyModelPrivate::_q_sourceDataChanged (this=0x56115b3698f0, source_top_left=..., source_bottom_right=..., roles=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/itemmodels/qsortfilterproxymodel.cpp:1450
#20 0x00007f398f3d37ef in QtPrivate::QSlotObjectBase::call (this=<optimized out>, r=<optimized out>, a=<optimized out>, this=<optimized out>, r=<optimized out>, a=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:461


Reported using DrKonqi
This report was filed against 'kde' because the product 'plasmashell' could not be located in Bugzilla. Add it to drkonqi's mappings file!
Comment 1 İsmail 2025-08-04 06:09:59 UTC
Created attachment 183772 [details]
New crash information added by DrKonqi

DrKonqi auto-attaching complete backtrace.
Comment 2 TraceyC 2025-08-04 22:04:47 UTC
Searchable backtrace


Thread 1 (Thread 0x7f39894e4a40 (LWP 1650)):
[KCrash Handler]
#5  0x00007f3991d6e19a in QDataStream::device (this=<optimized out>) at /usr/include/qt6/QtCore/qdatastream.h:435
#6  KServiceFactory::serviceOffers (this=0x56115ef837e0, serviceTypeOffset=83782, serviceOffersOffset=<optimized out>) at /usr/src/debug/kservice/kservice-6.16.0/src/services/kservicefactory.cpp:277
#7  0x00007f3991d675be in mimeTypeSycocaServiceOffers (mimeType=...) at /usr/src/debug/kservice/kservice-6.16.0/src/services/kapplicationtrader.cpp:45
#8  KApplicationTrader::queryByMimeType (mimeType=..., filterFunc=...) at /usr/src/debug/kservice/kservice-6.16.0/src/services/kapplicationtrader.cpp:79
#9  0x00007f3991d677b5 in KApplicationTrader::preferredService (mimeType=...) at /usr/src/debug/kservice/kservice-6.16.0/src/services/kapplicationtrader.cpp:89
#10 0x00007f3969cd7d65 in TaskManager::defaultApplication (url=...) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/tasktools.cpp:664
#11 0x00007f3969cd8e68 in TaskManager::appDataFromUrl (url=..., fallbackIcon=...) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/tasktools.cpp:152
#12 0x00007f3969ca4210 in TaskManager::LauncherTasksModel::Private::appData (this=0x56115b3ac550, url=...) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/launchertasksmodel.cpp:116
#13 0x00007f3969ca6342 in TaskManager::LauncherTasksModel::data (this=0x56115b3ac520, index=..., role=293) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/launchertasksmodel.cpp:296
#14 0x00007f398f5f909c in QModelIndex::data (this=<optimized out>, arole=<optimized out>, this=<optimized out>, arole=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/itemmodels/qabstractitemmodel.h:518
#15 QConcatenateTablesProxyModel::data (this=<optimized out>, index=..., role=293) at /usr/src/debug/qt6-base/qtbase/src/corelib/itemmodels/qconcatenatetablesproxymodel.cpp:191
#16 0x00007f3969cb4b98 in QModelIndex::data (this=this@entry=0x7ffcbe56c7c0, arole=arole@entry=293) at /usr/include/qt6/QtCore/qabstractitemmodel.h:518
#17 0x00007f3969cba09d in TaskManager::TaskFilterProxyModel::acceptsRow (this=0x56115b3698c0, sourceRow=9) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/taskfilterproxymodel.cpp:333
#18 0x00007f398f603929 in QSortFilterProxyModelPrivate::filterAcceptsRowInternal (this=0x56115b3698f0, source_row=9, source_parent=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/itemmodels/qsortfilterproxymodel.cpp:403
#19 0x00007f398f614c7d in QSortFilterProxyModelPrivate::_q_sourceDataChanged (this=0x56115b3698f0, source_top_left=..., source_bottom_right=..., roles=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/itemmodels/qsortfilterproxymodel.cpp:1450
#20 0x00007f398f3d37ef in QtPrivate::QSlotObjectBase::call (this=<optimized out>, r=<optimized out>, a=<optimized out>, this=<optimized out>, r=<optimized out>, a=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:461
#21 doActivate<false> (sender=<optimized out>, signal_index=<optimized out>, argv=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4146
#22 0x00007f398f5f8e87 in QMetaObject::activate<void, QModelIndex, QModelIndex, QList<int> > (sender=0x56115b2f9380, mo=<optimized out>, local_signal_index=0, ret=0x0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs.h:306
#23 QAbstractItemModel::dataChanged (this=0x56115b2f9380, _t1=..., _t2=..., _t3=...) at /usr/src/debug/qt6-base/build/src/corelib/Core_autogen/include/moc_qabstractitemmodel.cpp:658
#24 QConcatenateTablesProxyModelPrivate::slotDataChanged (this=<optimized out>, from=..., to=..., roles=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/itemmodels/qconcatenatetablesproxymodel.cpp:745
#25 0x00007f398f3d37ef in QtPrivate::QSlotObjectBase::call (this=<optimized out>, r=<optimized out>, a=<optimized out>, this=<optimized out>, r=<optimized out>, a=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:461
#26 doActivate<false> (sender=<optimized out>, signal_index=<optimized out>, argv=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4146
#27 0x00007f398f5cde31 in QMetaObject::activate<void, QModelIndex, QModelIndex, QList<int> > (sender=0x56115b3ac520, mo=<optimized out>, local_signal_index=0, ret=0x0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs.h:306
#28 QAbstractItemModel::dataChanged (this=this@entry=0x56115b3ac520, _t1=..., _t2=..., _t3=...) at /usr/src/debug/qt6-base/build/src/corelib/Core_autogen/include/moc_qabstractitemmodel.cpp:658
#29 0x00007f3969cb2563 in operator() (__closure=<optimized out>) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/libtaskmanager/launchertasksmodel.cpp:92
#30 operator() (__closure=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:116
#31 QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<std::integer_sequence<long unsigned int>, QtPrivate::List<>, void, TaskManager::LauncherTasksModel::Private::init()::<lambda()> >::call(TaskManager::LauncherTasksModel::Private::init()::<lambda()>&, void**)::<lambda()> > (args=<optimized out>, fn=...) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:65
#32 QtPrivate::FunctorCall<std::integer_sequence<long unsigned int>, QtPrivate::List<>, void, TaskManager::LauncherTasksModel::Private::init()::<lambda()> >::call (f=..., arg=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:115
#33 QtPrivate::FunctorCallable<TaskManager::LauncherTasksModel::Private::init()::<lambda()> >::call<QtPrivate::List<>, void> (f=..., arg=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:337
#34 QtPrivate::QCallableObject<TaskManager::LauncherTasksModel::Private::init()::<lambda()>, QtPrivate::List<>, 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/qt6/QtCore/qobjectdefs_impl.h:547
#35 0x00007f398f3d37ef in QtPrivate::QSlotObjectBase::call (this=<optimized out>, r=<optimized out>, a=<optimized out>, this=<optimized out>, r=<optimized out>, a=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:461
#36 doActivate<false> (sender=<optimized out>, signal_index=<optimized out>, argv=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4146
#37 0x00007f398f3e0abf in QMetaObject::activate<void, QTimer::QPrivateSignal> (sender=<optimized out>, mo=<optimized out>, local_signal_index=0, ret=0x0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs.h:306
#38 QTimer::timeout (this=<optimized out>, _t1=...) at /usr/src/debug/qt6-base/build/src/corelib/Core_autogen/include/moc_qtimer.cpp:182
#39 QTimer::timerEvent (e=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimer.cpp:285
#40 QTimer::timerEvent (this=<optimized out>, e=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimer.cpp:279
#41 0x00007f398f3c0dd6 in QObject::event (this=<optimized out>, e=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:1406
#42 0x00007f3991501c70 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x56115b3ac590, e=0x7ffcbe56d240) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:3303
#43 0x00007f398f368118 in QCoreApplication::notifyInternal2 (receiver=0x56115b3ac590, event=0x7ffcbe56d240) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1106
#44 0x00007f398f51bc6f in QCoreApplication::sendEvent (receiver=<optimized out>, event=0x7ffcbe56d240) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1546
#45 QTimerInfoList::activateTimers (this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimerinfo_unix.cpp:426
#46 0x00007f398f63fc79 in timerSourceDispatch (source=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:152
#47 0x00007f398de6887d in g_main_dispatch (context=0x7f3984000f70) at ../glib/glib/gmain.c:3398
#48 0x00007f398de69cd7 in g_main_context_dispatch_unlocked (context=0x7f3984000f70) at ../glib/glib/gmain.c:4249
#49 g_main_context_iterate_unlocked (context=context@entry=0x7f3984000f70, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4314
#50 0x00007f398de69ee5 in g_main_context_iteration (context=0x7f3984000f70, may_block=1) at ../glib/glib/gmain.c:4379
#51 0x00007f398f63c5e2 in QEventDispatcherGlib::processEvents (this=0x561159b62aa0, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#52 0x00007f398f3744b6 in QEventLoop::processEvents (this=0x7ffcbe56d510, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:104
#53 QEventLoop::exec (this=0x7ffcbe56d510, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:186
#54 0x00007f398f36c7c1 in QCoreApplication::exec () at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1449
#55 0x00007f39914fc66a in QApplication::exec () at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:2570
#56 0x000056111dc6e592 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.3/shell/main.cpp:188
Comment 3 Nate Graham 2025-08-19 23:05:08 UTC
The Task Manager is choking while trying to read data for the pinned apps. Which apps do you have pinned? Can you find their .desktop files (they might live in /usr/share/applications, /var/lib/flatpak/exports/share/applications/, ~/.local/share/applications/, /var/lib/flatpak/exports/share/applications/, or ~/.local/share/flatpak/exports/share/applications/) and run `desktop-file-validate` on each of those .desktop files? It's possible one of them is corrupt and we're not handling that properly in Task Manager code.
Comment 4 İsmail 2025-08-21 05:47:27 UTC
(In reply to Nate Graham from comment #3)
> The Task Manager is choking while trying to read data for the pinned apps.
> Which apps do you have pinned? Can you find their .desktop files (they might
> live in /usr/share/applications,
> /var/lib/flatpak/exports/share/applications/, ~/.local/share/applications/,
> /var/lib/flatpak/exports/share/applications/, or
> ~/.local/share/flatpak/exports/share/applications/) and run
> `desktop-file-validate` on each of those .desktop files? It's possible one
> of them is corrupt and we're not handling that properly in Task Manager code.

Hey Nate! Here is the output of the validation of the relevant applications:

> /usr/share/applications
> ❯ desktop-file-validate org.kde.kate.desktop
> org.kde.kate.desktop: warning: value "Разширен текстов редактор на KDE" for key "Comment[bg]" in group "Desktop Entry" looks the same as that of key "GenericName[bg]"
> org.kde.kate.desktop: hint: value "Qt;KDE;Utility;TextEditor;Development;" for key "Categories" in group "Desktop Entry" contains more than one main category; application might appear more than once in the application menu
> 
> /usr/share/applications
> ❯ desktop-file-validate org.kde.dolphin.desktop
> 
> /usr/share/applications
> ❯ desktop-file-validate vivaldi-stable.desktop 
> 
> /usr/share/applications
> ❯ desktop-file-validate zen.desktop 
>
Comment 5 Nate Graham 2025-08-22 19:17:36 UTC
Thanks. Looks like none of them have any errors, so perhaps my theory was wrong.