Bug 333475

Summary: plasma-desktop crashed
Product: [Frameworks and Libraries] kdelibs Reporter: Matthew Woehlke <mwoehlke.floss>
Component: kshareddatacacheAssignee: kdelibs bugs <kdelibs-bugs>
Status: RESOLVED WORKSFORME    
Severity: crash CC: kavol, mpyne, rasasi78
Priority: NOR Keywords: drkonqi
Version: 4.12.3   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=333544
Latest Commit: Version Fixed In:
Attachments: New crash information added by DrKonqi

Description Matthew Woehlke 2014-04-15 19:15:06 UTC
Application: plasma-desktop (4.11.8)
KDE Platform Version: 4.12.3
Qt Version: 4.8.5
Operating System: Linux 3.13.9-200.fc20.x86_64 x86_64
Distribution (Platform): Fedora RPMs

-- Information about the crash:
I've experienced three crashes with the attached backtrace while running gwenview under valgrind (i.e. running "valgrind gwenview" and waiting for gwenview to start caused plasma-desktop to crash).

Given the icon cache, maybe there is a race condition in the icon cache that is triggered by gwenview trying to concurrently use it while running slowly due to valgrind?

Possibly related: gwenview is crashing in liblcms2 while viewing https://raw.githubusercontent.com/Slicer/Slicer/master/Applications/SlicerApp/Resources/Images/SlicerSplashScreen.png. There is something visibly wrong with the decoding of this file on my system in its current state (Fedora 20 with all updates as of 2014-04-15).

The crash can be reproduced sometimes.

-- Backtrace:
Application: Plasma Desktop Shell (plasma-desktop), signal: Illegal instruction
Using host libthread_db library "/lib64/libthread_db.so.1".
81	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7f6647d7a8c0 (LWP 20987))]

Thread 3 (Thread 0x7f662d9d1700 (LWP 20988)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x000000388438f09b in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x388468df00 <QTWTF::pageheap_memory>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x000000388438f0d9 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x0000003866e07f33 in start_thread (arg=0x7f662d9d1700) at pthread_create.c:309
#4  0x00000038662f4ded in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 2 (Thread 0x7f65a913e700 (LWP 20989)):
#0  0x00000038662ea9dd in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x000000386a6495b4 in g_main_context_poll (priority=2147483647, n_fds=1, fds=0x7f65a4002bb0, timeout=-1, context=0x7f65a40009a0) at gmain.c:4007
#2  g_main_context_iterate (context=context@entry=0x7f65a40009a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3708
#3  0x000000386a6496dc in g_main_context_iteration (context=0x7f65a40009a0, may_block=1) at gmain.c:3774
#4  0x00000038707b2ec6 in QEventDispatcherGlib::processEvents (this=0x7f65a40008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:427
#5  0x0000003870782edf in QEventLoop::processEvents (this=this@entry=0x7f65a913dcc0, flags=...) at kernel/qeventloop.cpp:149
#6  0x000000387078322d in QEventLoop::exec (this=this@entry=0x7f65a913dcc0, flags=...) at kernel/qeventloop.cpp:204
#7  0x0000003870679baf in QThread::exec (this=this@entry=0x2ed73e0) at thread/qthread.cpp:536
#8  0x0000003870763863 in QInotifyFileSystemWatcherEngine::run (this=0x2ed73e0) at io/qfilesystemwatcher_inotify.cpp:265
#9  0x000000387067c3af in QThreadPrivate::start (arg=0x2ed73e0) at thread/qthread_unix.cpp:338
#10 0x0000003866e07f33 in start_thread (arg=0x7f65a913e700) at pthread_create.c:309
#11 0x00000038662f4ded in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 1 (Thread 0x7f6647d7a8c0 (LWP 20987)):
[KCrash Handler]
#6  0x0000003866e11314 in _xbegin () at ../nptl/sysdeps/unix/sysv/linux/x86/hle.h:53
#7  __lll_timedlock_elision (futex=futex@entry=0x7f663e997008, adapt_count=adapt_count@entry=0x7f663e99701c, t=0x7fff945d81c0, private=128) at ../nptl/sysdeps/unix/sysv/linux/x86/elision-lock.c:56
#8  0x0000003866e0ab17 in pthread_mutex_timedlock (mutex=0x7f663e997008, abstime=0x7fff945d81c0) at ../nptl/pthread_mutex_timedlock.c:103
#9  0x000000358e43ca3c in pthreadTimedLock::lock (this=0x2a2b910) at /usr/src/debug/kdelibs-4.12.3/kdecore/util/kshareddatacache_p.h:252
#10 0x000000358e43735a in lock (this=0x225c040) at /usr/src/debug/kdelibs-4.12.3/kdecore/util/kshareddatacache.cpp:1236
#11 cautiousLock (this=<optimized out>) at /usr/src/debug/kdelibs-4.12.3/kdecore/util/kshareddatacache.cpp:1259
#12 CacheLocker (_d=0x225c040, this=<synthetic pointer>) at /usr/src/debug/kdelibs-4.12.3/kdecore/util/kshareddatacache.cpp:1309
#13 KSharedDataCache::insert (this=0x22fa2f0, key=..., data=...) at /usr/src/debug/kdelibs-4.12.3/kdecore/util/kshareddatacache.cpp:1447
#14 0x000000358edfd554 in KIconLoaderPrivate::insertCachedPixmapWithPath (this=0x2292440, key=..., data=..., path=...) at /usr/src/debug/kdelibs-4.12.3/kdeui/icons/kiconloader.cpp:827
#15 0x000000358edfe023 in KIconLoader::loadIcon (this=0x2220840, _name=..., group=group@entry=KIconLoader::Small, size=size@entry=16, state=state@entry=0, overlays=..., path_store=path_store@entry=0x0, canReturnNull=canReturnNull@entry=true) at /usr/src/debug/kdelibs-4.12.3/kdeui/icons/kiconloader.cpp:1205
#16 0x000000358ef7fd52 in KWindowSystem::icon (win=<optimized out>, width=16, height=16, scale=scale@entry=true, flags=flags@entry=15) at /usr/src/debug/kdelibs-4.12.3/kdeui/windowmanagement/kwindowsystem_x11.cpp:706
#17 0x000000358ef80333 in KWindowSystem::icon (win=<optimized out>, width=<optimized out>, height=<optimized out>, scale=scale@entry=true) at /usr/src/debug/kdelibs-4.12.3/kdeui/windowmanagement/kwindowsystem_x11.cpp:639
#18 0x00007f662de2d279 in Pager::recalculateWindowRects (this=0x2761da0) at /usr/src/debug/kde-workspace-4.11.8/plasma/desktop/applets/pager/pager.cpp:610
#19 0x00007f662de2e4c5 in Pager::qt_static_metacall (_o=<optimized out>, _id=<optimized out>, _a=0x7fff945d8980, _c=<optimized out>) at /usr/src/debug/kde-workspace-4.11.8/x86_64-redhat-linux-gnu/plasma/desktop/applets/pager/pager.moc:124
#20 0x0000003870798cf8 in QMetaObject::activate (sender=0x2a2fbf0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3547
#21 0x000000387079d0a1 in QObject::event (this=0x2a2fbf0, e=<optimized out>) at kernel/qobject.cpp:1156
#22 0x00000039febc9d8c in QApplicationPrivate::notify_helper (this=this@entry=0x21933c0, receiver=receiver@entry=0x2a2fbf0, e=e@entry=0x7fff945d8df0) at kernel/qapplication.cpp:4562
#23 0x00000039febd0725 in QApplication::notify (this=this@entry=0x218cfb0, receiver=receiver@entry=0x2a2fbf0, e=e@entry=0x7fff945d8df0) at kernel/qapplication.cpp:4348
#24 0x000000358ee4ab0a in KApplication::notify (this=0x218cfb0, receiver=0x2a2fbf0, event=0x7fff945d8df0) at /usr/src/debug/kdelibs-4.12.3/kdeui/kernel/kapplication.cpp:311
#25 0x000000387078439d in QCoreApplication::notifyInternal (this=0x218cfb0, receiver=0x2a2fbf0, event=event@entry=0x7fff945d8df0) at kernel/qcoreapplication.cpp:949
#26 0x00000038707b5ae3 in sendEvent (event=0x7fff945d8df0, receiver=<optimized out>) at kernel/qcoreapplication.h:231
#27 QTimerInfoList::activateTimers (this=this@entry=0x2195570) at kernel/qeventdispatcher_unix.cpp:621
#28 0x00000038707b2c31 in timerSourceDispatch (source=source@entry=0x2195510) at kernel/qeventdispatcher_glib.cpp:186
#29 0x000000386a6492a6 in g_main_dispatch (context=0x21937a0) at gmain.c:3066
#30 g_main_context_dispatch (context=context@entry=0x21937a0) at gmain.c:3642
#31 0x000000386a649628 in g_main_context_iterate (context=context@entry=0x21937a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3713
#32 0x000000386a6496dc in g_main_context_iteration (context=0x21937a0, may_block=1) at gmain.c:3774
#33 0x00000038707b2ea5 in QEventDispatcherGlib::processEvents (this=0x2192830, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#34 0x00000039fec6bca6 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:207
#35 0x0000003870782edf in QEventLoop::processEvents (this=this@entry=0x7fff945d9080, flags=...) at kernel/qeventloop.cpp:149
#36 0x000000387078322d in QEventLoop::exec (this=this@entry=0x7fff945d9080, flags=...) at kernel/qeventloop.cpp:204
#37 0x0000003870788749 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1221
#38 0x00000039febc83fc in QApplication::exec () at kernel/qapplication.cpp:3823
#39 0x0000003bbea3d9cc in kdemain (argc=1, argv=0x7fff945d92f8) at /usr/src/debug/kde-workspace-4.11.8/plasma/desktop/shell/main.cpp:126
#40 0x0000003866221d65 in __libc_start_main (main=0x400940 <main(int, char**)>, argc=1, argv=0x7fff945d92f8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff945d92e8) at libc-start.c:285
#41 0x0000000000400971 in _start ()

Reported using DrKonqi
Comment 1 kavol 2014-04-30 09:53:01 UTC
Created attachment 86364 [details]
New crash information added by DrKonqi

plasma-desktop (4.11.8) on KDE Platform 4.12.4 using Qt 4.8.5

- What I was doing when the application crashed:

It just crashed when I was switching apps via alt-tab.

-- Backtrace (Reduced):
#6  0x0000003d6620aa39 in pthread_mutex_timedlock (mutex=0x7fd201182008, abstime=0x7fff831f4520) at ../nptl/pthread_mutex_timedlock.c:96
#7  0x00000037b503ca5c in pthreadTimedLock::lock (this=0xed4d80) at /usr/src/debug/kdelibs-4.12.4/kdecore/util/kshareddatacache_p.h:252
#8  0x00000037b503737a in lock (this=0xe5c730) at /usr/src/debug/kdelibs-4.12.4/kdecore/util/kshareddatacache.cpp:1236
#9  cautiousLock (this=<optimized out>) at /usr/src/debug/kdelibs-4.12.4/kdecore/util/kshareddatacache.cpp:1259
#10 CacheLocker (_d=0xe5c730, this=<synthetic pointer>) at /usr/src/debug/kdelibs-4.12.4/kdecore/util/kshareddatacache.cpp:1309
Comment 2 Andrew Crouthamel 2018-11-01 13:46:52 UTC
Dear Bug Submitter,

This bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? I am setting the status to NEEDSINFO pending your response, please change the Status back to REPORTED when you respond.

Thank you for helping us make KDE software even better for everyone!
Comment 3 Bug Janitor Service 2018-11-16 11:32:56 UTC
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!
Comment 4 Bug Janitor Service 2018-12-01 03:47:20 UTC
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!