Summary: | Crash in KIconLoaderPrivate::findCachedPixmapWithPath and KSharedDataCache | ||
---|---|---|---|
Product: | [Frameworks and Libraries] frameworks-kcoreaddons | Reporter: | RJ <ogldelphi> |
Component: | general | Assignee: | Michael Pyne <mpyne> |
Status: | RESOLVED WORKSFORME | ||
Severity: | crash | CC: | 2637827727, AK973, davestechshop, kde, kdelibs-bugs, keplicz, kollix, mpyne, nico.kruber, noesgaard, nougueyc, ogldelphi, oo.o+kde, paulac.bur, shlomif, simonandric5, spikethehobbitmage, ssaady, tom.iglo |
Priority: | VHI | ||
Version: | 5.0.0 | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Other | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
RJ
2016-04-05 20:13:15 UTC
*** Bug 362527 has been marked as a duplicate of this bug. *** *** Bug 365949 has been marked as a duplicate of this bug. *** *** Bug 351880 has been marked as a duplicate of this bug. *** *** Bug 340277 has been marked as a duplicate of this bug. *** *** Bug 340247 has been marked as a duplicate of this bug. *** It seems this is a bug in the shared data cache with respect to icons. Here is a current backtrace from Kate development version (2016-09-06). Yesterday, I did an update through Yast (openSUSE), so maybe some icons changed and somehow the cache is an some strange state? Application: Kate (kate), signal: Illegal instruction Using host libthread_db library "/lib64/libthread_db.so.1". [Current thread is 1 (Thread 0x7f1aafd097c0 (LWP 2430))] Thread 1 (Thread 0x7f1aafd097c0 (LWP 2430)): [KCrash Handler] #6 0x00007f1aa72d1214 in __lll_timedlock_elision () from /lib64/libpthread.so.0 #7 0x00007f1aa72cadc4 in pthread_mutex_timedlock () from /lib64/libpthread.so.0 #8 0x00007f1aaa6cb871 in pthreadTimedLock::lock (this=0x14e0910) at /home/dh/kde/kf5/src/frameworks/kcoreaddons/src/lib/caching/kshareddatacache_p.h:250 #9 0x00007f1aaa6ce6a5 in KSharedDataCache::Private::lock (this=0x14c8b10) at /home/dh/kde/kf5/src/frameworks/kcoreaddons/src/lib/caching/kshareddatacache.cpp:1217 #10 0x00007f1aaa6ce8c9 in KSharedDataCache::Private::CacheLocker::cautiousLock (this=0x7fff4f1333c0) at /home/dh/kde/kf5/src/frameworks/kcoreaddons/src/lib/caching/kshareddatacache.cpp:1240 #11 0x00007f1aaa6cea2f in KSharedDataCache::Private::CacheLocker::CacheLocker (this=0x7fff4f1333c0, _d=0x14c8b10) at /home/dh/kde/kf5/src/frameworks/kcoreaddons/src/lib/caching/kshareddatacache.cpp:1290 #12 0x00007f1aaa6ca806 in KSharedDataCache::find (this=0x14c78d0, key=..., destination=0x7fff4f1334b0) at /home/dh/kde/kf5/src/frameworks/kcoreaddons/src/lib/caching/kshareddatacache.cpp:1578 #13 0x00007f1aad51b397 in KIconLoaderPrivate::findCachedPixmapWithPath (this=0x14c85d0, key=..., data=..., path=...) at /home/dh/kde/kf5/src/frameworks/kiconthemes/src/kiconloader.cpp:984 #14 0x00007f1aad51d003 in KIconLoader::loadIcon (this=0x7f1aad74b1c0 <(anonymous namespace)::Q_QGS_globalIconLoader::innerFunction()::holder>, _name=..., group=KIconLoader::Desktop, size=16, state=0, overlays=..., path_store=0x0, canReturnNull=false) at /home/dh/kde/kf5/src/frameworks/kiconthemes/src/kiconloader.cpp:1277 #15 0x00007f1aad51676a in KIconEngine::pixmap (this=0x3329a60, size=..., mode=QIcon::Normal, state=QIcon::Off) at /home/dh/kde/kf5/src/frameworks/kiconthemes/src/kiconengine.cpp:102 #16 0x00007f1aaaa8e219 in QIcon::pixmap(QWindow*, QSize const&, QIcon::Mode, QIcon::State) const () from /usr/lib64/libQt5Gui.so.5 #17 0x00007f1aaaa8e2ba in QIcon::pixmap(QSize const&, QIcon::Mode, QIcon::State) const () from /usr/lib64/libQt5Gui.so.5 #18 0x00007f1aaf488466 in KateKeywordCompletionModel::data (this=0x1699610, index=..., role=1) at /home/dh/kde/kf5/src/frameworks/ktexteditor/src/completion/katekeywordcompletion.cpp:175 #19 0x00007f1aaf451bdd in QModelIndex::data (this=0x7fff4f133bf0, arole=1) at /usr/include/qt5/QtCore/qabstractitemmodel.h:426 #20 0x00007f1aaf455c3c in KateCompletionModel::data (this=0x2a3be10, index=..., role=1) at /home/dh/kde/kf5/src/frameworks/ktexteditor/src/completion/katecompletionmodel.cpp:272 #21 0x00007f1aaf451bdd in QModelIndex::data (this=0x7fff4f133d10, arole=1) at /usr/include/qt5/QtCore/qabstractitemmodel.h:426 #22 0x00007f1aaf469884 in KateCompletionTree::columnTextViewportPosition (this=0x2a3c280, column=1) at /home/dh/kde/kf5/src/frameworks/ktexteditor/src/completion/katecompletiontree.cpp:105 #23 0x00007f1aaf44bf89 in KateCompletionWidget::updatePosition (this=0x2a3bb30, force=true) at /home/dh/kde/kf5/src/frameworks/ktexteditor/src/completion/katecompletionwidget.cpp:524 #24 0x00007f1aaf44bc42 in KateCompletionWidget::updateAndShow (this=0x2a3bb30) at /home/dh/kde/kf5/src/frameworks/ktexteditor/src/completion/katecompletionwidget.cpp:479 #25 0x00007f1aaf44a6ea in KateCompletionWidget::modelContentChanged (this=0x2a3bb30) at /home/dh/kde/kf5/src/frameworks/ktexteditor/src/completion/katecompletionwidget.cpp:222 #26 0x00007f1aaf44b9ce in KateCompletionWidget::startCompletion (this=0x2a3bb30, word=..., modelsToStart=..., invocationType=KTextEditor::CodeCompletionModel::AutomaticInvocation) at /home/dh/kde/kf5/src/frameworks/ktexteditor/src/completion/katecompletionwidget.cpp:442 #27 0x00007f1aaf44ac7f in KateCompletionWidget::startCompletion (this=0x2a3bb30, invocationType=KTextEditor::CodeCompletionModel::AutomaticInvocation, models=...) at /home/dh/kde/kf5/src/frameworks/ktexteditor/src/completion/katecompletionwidget.cpp:312 #28 0x00007f1aaf45043d in KateCompletionWidget::automaticInvocation (this=0x2a3bb30) at /home/dh/kde/kf5/src/frameworks/ktexteditor/src/completion/katecompletionwidget.cpp:1429 #29 0x00007f1aaf6a044a in KateCompletionWidget::qt_static_metacall (_o=0x2a3bb30, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0x7fff4f1344d0) at /home/dh/kde/kf5/build/frameworks/ktexteditor/src/KF5TextEditor_automoc.dir/completion/moc_katecompletionwidget.cpp:182 #30 0x00007f1aa9d546e5 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5 #31 0x00007f1aa9d61c62 in QTimer::timerEvent(QTimerEvent*) () from /usr/lib64/libQt5Core.so.5 #32 0x00007f1aa9d55bc4 in QObject::event(QEvent*) () from /usr/lib64/libQt5Core.so.5 #33 0x00007f1aab178afc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5 #34 0x00007f1aab17fa80 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5 #35 0x00007f1aa9d2c5f5 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5 #36 0x00007f1aa9d7a87e in QTimerInfoList::activateTimers() () from /usr/lib64/libQt5Core.so.5 #37 0x00007f1aa9d7ac31 in ?? () from /usr/lib64/libQt5Core.so.5 #38 0x00007f1aa39f0c84 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #39 0x00007f1aa39f0ed8 in ?? () from /usr/lib64/libglib-2.0.so.0 #40 0x00007f1aa39f0f7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #41 0x00007f1aa9d7af5c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5 #42 0x00007f1aa9d2a8cb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5 #43 0x00007f1aa9d326c6 in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5 #44 0x0000000000497097 in main (argc=1, argv=0x7fff4f136598) at /home/dh/kde/kf5/src/kde/applications/kate/kate/main.cpp:576 @Michal Pyne: Can you look into this maybe? Iirc, you were involved with the KSharedDataCache or similar? :-) This issue definitely still exists, and seems to be there since > 5 years. *** Bug 333544 has been marked as a duplicate of this bug. *** *** Bug 305453 has been marked as a duplicate of this bug. *** *** Bug 310111 has been marked as a duplicate of this bug. *** *** Bug 313545 has been marked as a duplicate of this bug. *** Possibly related: bug #249362. I've looked at this and similar bugs quite a few times in the past few years but have not had any luck in reproducing the crash or otherwise narrowing down the issue. You mentioned that it crashed with Kate... in theory that shouldn't matter much since even if the icons changed, the cached icons would not have. Clearly something is still causing a crash though. :( I'll try again to see if I can reproduce the crash, or at least to investigate alternatives to the current lock that may be more resilient (e.g. switching to the spinlock by default, or seeing if pthread "robust" mutexes might help). *** Bug 383496 has been marked as a duplicate of this bug. *** *** Bug 384320 has been marked as a duplicate of this bug. *** Just hit a duplicate of this, user was using "bleachbit" which is a piece of software that just randomly deletes other program's files. It might be the case for the other user's here. Can other people affected confirm if they were also deleting files in ~/.cache at the time. If deleting files were all BleachBit did, that would still be fine. It would make things unnecessarily slower but that's how the existing code clears the cache, it just unlinks the file and lets the kernel do the rest once the shared memory is unmapped. The problem with BleachBit is far more sinister from this POV: it actually mangles the files, filling them with random data, before unlinking them. I can see the appeal, but running it on files in use is a disaster waiting to happen. It's possible that using /dev/shm directly might be workable on the systems we support though, which may at least workaround BleachBit insanity. But I had thought that BleachBit had already removed the KDE cache directory from its default search path? Maybe bleachbit was not updated to the new KF5 location ~/.cache/ *** Bug 423234 has been marked as a duplicate of this bug. *** Thank you for reporting this crash in KDE software. As it has been a while since this issue was reported, can we please ask you to see if you can reproduce the crash with a recent software version? If you can reproduce the issue, please change the status to "CONFIRMED" when replying. Thank you! Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed. 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. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging Thank you for helping us make KDE software even better for everyone! *** Bug 442245 has been marked as a duplicate of this bug. *** *** Bug 454202 has been marked as a duplicate of this bug. *** *** Bug 462868 has been marked as a duplicate of this bug. *** |