Bug 323242

Summary: Crash in FileMetaDataProvider::setItems
Product: nepomuk Reporter: gridi_i
Component: widgets - FileMetadataWidgetAssignee: Nepomuk Bugs Coordination <nepomuk-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: arparamir, frank78ac, marcorossi2k, me, patodea
Priority: NOR Keywords: drkonqi
Version: 4.10.5   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:

Description gridi_i 2013-08-06 18:30:11 UTC
Application: dolphin (2.2)
KDE Platform Version: 4.10.5 "release 1"
Qt Version: 4.8.4
Operating System: Linux 3.7.10-1.16-desktop x86_64
Distribution: "openSUSE 12.3 (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:
transfers digital photo ( usb : hardware : Nikon D40)  on one folder in Dolphin (drag/copy)

-- Backtrace:
Application: Dolphin (kdeinit4), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fa68c10e780 (LWP 4248))]

Thread 3 (Thread 0x7fa6709c9700 (LWP 4250)):
#0  0x00007fff243ff60c in ?? ()
#1  0x00007fff243ff8ac in clock_gettime ()
#2  0x00007fa68975e53d in clock_gettime () from /lib64/libc.so.6
#3  0x00007fa68acc1d94 in do_gettime (frac=0x7fa6709c8b28, sec=0x7fa6709c8b20) at tools/qelapsedtimer_unix.cpp:123
#4  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#5  0x00007fa68ad96bed in QTimerInfoList::updateCurrentTime (this=this@entry=0x7fa66c002860) at kernel/qeventdispatcher_unix.cpp:354
#6  0x00007fa68ad96f33 in QTimerInfoList::timerWait (this=0x7fa66c002860, tm=...) at kernel/qeventdispatcher_unix.cpp:461
#7  0x00007fa68ad9599c in timerSourcePrepareHelper (src=<optimized out>, timeout=0x7fa6709c8c14) at kernel/qeventdispatcher_glib.cpp:136
#8  0x00007fa68ad95a45 in timerSourcePrepare (source=<optimized out>, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#9  0x00007fa686690338 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#10 0x00007fa6866909cb in ?? () from /usr/lib64/libglib-2.0.so.0
#11 0x00007fa686690bc4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#12 0x00007fa68ad962e6 in QEventDispatcherGlib::processEvents (this=0x7fa66c0008e0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#13 0x00007fa68ad66adf in QEventLoop::processEvents (this=this@entry=0x7fa6709c8dd0, flags=...) at kernel/qeventloop.cpp:149
#14 0x00007fa68ad66d68 in QEventLoop::exec (this=0x7fa6709c8dd0, flags=...) at kernel/qeventloop.cpp:204
#15 0x00007fa68ac690f0 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:542
#16 0x00007fa68ad4729f in QInotifyFileSystemWatcherEngine::run (this=0x29941b0) at io/qfilesystemwatcher_inotify.cpp:256
#17 0x00007fa68ac6c0cc in QThreadPrivate::start (arg=0x29941b0) at thread/qthread_unix.cpp:338
#18 0x00007fa68a9d5e0f in start_thread () from /lib64/libpthread.so.0
#19 0x00007fa68974c7dd in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7fa66aed8700 (LWP 4449)):
#0  0x00007fa689748449 in syscall () from /lib64/libc.so.6
#1  0x00007fa68ac6ab74 in _q_futex (timeout=0x0, val=2, op=0, addr=0x34f34e0, addr2=<optimized out>, val2=<optimized out>) at thread/qmutex_unix.cpp:99
#2  QMutexPrivate::wait (this=0x34f34e0, timeout=<optimized out>) at thread/qmutex_unix.cpp:113
#3  0x00007fa68ac66d75 in QMutex::lockInternal (this=<optimized out>) at thread/qmutex.cpp:450
#4  0x00007fa68ac6c150 in lockInline (this=0x3461a18) at ../../src/corelib/thread/qmutex.h:190
#5  lockInline (this=0x3461a18) at thread/qthread_unix.cpp:299
#6  QMutexLocker (m=0x3461a18, this=<synthetic pointer>) at ../../src/corelib/thread/qmutex.h:109
#7  QThreadPrivate::start (arg=0x3421170) at thread/qthread_unix.cpp:317
#8  0x00007fa68a9d5e0f in start_thread () from /lib64/libpthread.so.0
#9  0x00007fa68974c7dd in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fa68c10e780 (LWP 4248)):
[KCrash Handler]
#6  0x00007fa6896993d5 in raise () from /lib64/libc.so.6
#7  0x00007fa68969a858 in abort () from /lib64/libc.so.6
#8  0x00007fa6896d907b in __libc_message () from /lib64/libc.so.6
#9  0x00007fa6896debf6 in malloc_printerr () from /lib64/libc.so.6
#10 0x00007fa6896df973 in _int_free () from /lib64/libc.so.6
#11 0x00007fa67b7b407c in ?? () from /usr/X11R6/lib64/libGL.so.1
#12 0x00007fa67ac1317a in ?? () from /usr/lib64/tls/libnvidia-tls.so.319.32
#13 0x00007fa68ac6b89e in QThread::start (this=0x3421170, priority=<optimized out>) at thread/qthread_unix.cpp:640
#14 0x00007fa6761433ca in Nepomuk2::FileMetaDataProvider::setItems (this=0x26d3240, items=...) at /usr/src/debug/nepomuk-widgets-4.10.5/ui/filemetadataprovider.cpp:398
#15 0x00007fa676140559 in Nepomuk2::FileMetaDataWidget::setItems (this=0x2a7d4c0, items=...) at /usr/src/debug/nepomuk-widgets-4.10.5/ui/filemetadatawidget.cpp:258
#16 0x00007fa676e9a8fa in InformationPanelContent::showItems (this=0x2beb5b0, items=...) at /usr/src/debug/kde-baseapps-4.10.5/dolphin/src/panels/information/informationpanelcontent.cpp:240
#17 0x00007fa676e9919d in InformationPanel::showItemInfo (this=0x2c10500) at /usr/src/debug/kde-baseapps-4.10.5/dolphin/src/panels/information/informationpanel.cpp:171
#18 0x00007fa68ad7d29f in QMetaObject::activate (sender=0x2bec020, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3548
#19 0x00007fa68ad7c5ac in QObject::event (this=0x2bec020, e=<optimized out>) at kernel/qobject.cpp:1165
#20 0x00007fa689ef586c in QApplicationPrivate::notify_helper (this=this@entry=0x2655090, receiver=receiver@entry=0x2bec020, e=e@entry=0x7fff2437de40) at kernel/qapplication.cpp:4562
#21 0x00007fa689ef9ceb in QApplication::notify (this=0x7fff2437e200, receiver=0x2bec020, e=0x7fff2437de40) at kernel/qapplication.cpp:4423
#22 0x00007fa68bb097f6 in KApplication::notify (this=0x7fff2437e200, receiver=0x2bec020, event=0x7fff2437de40) at /usr/src/debug/kdelibs-4.10.5/kdeui/kernel/kapplication.cpp:311
#23 0x00007fa68ad67d8e in QCoreApplication::notifyInternal (this=0x7fff2437e200, receiver=0x2bec020, event=0x7fff2437de40) at kernel/qcoreapplication.cpp:946
#24 0x00007fa68ad98b61 in sendEvent (event=0x7fff2437de40, receiver=<optimized out>) at kernel/qcoreapplication.h:231
#25 QTimerInfoList::activateTimers (this=0x2657860) at kernel/qeventdispatcher_unix.cpp:637
#26 0x00007fa68ad95c54 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:186
#27 timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:180
#28 0x00007fa68ad95c71 in idleTimerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:233
#29 0x00007fa6866907d5 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#30 0x00007fa686690b08 in ?? () from /usr/lib64/libglib-2.0.so.0
#31 0x00007fa686690bc4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#32 0x00007fa68ad962c6 in QEventDispatcherGlib::processEvents (this=0x25a0790, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#33 0x00007fa689f95c1e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#34 0x00007fa68ad66adf in QEventLoop::processEvents (this=this@entry=0x7fff2437e0c0, flags=...) at kernel/qeventloop.cpp:149
#35 0x00007fa68ad66d68 in QEventLoop::exec (this=0x7fff2437e0c0, flags=...) at kernel/qeventloop.cpp:204
#36 0x00007fa68ad6ba08 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1218
#37 0x00007fa676e98117 in kdemain (argc=6, argv=0x27c1050) at /usr/src/debug/kde-baseapps-4.10.5/dolphin/src/main.cpp:90
#38 0x000000000040889a in _start ()

Reported using DrKonqi
Comment 1 Frank Reininghaus 2013-08-06 19:25:02 UTC
Thanks for the bug report. The crash happens in Nepomuk code, so I'll reassign. I'm not really sure where to look for the bug though. It looks like there is some memory corruption, which can in principle come from anywhere, but maybe Vishesh has an idea.

Can you reproduce this crash? If yes, can you try to run Dolphin in Valgrind:

valgrind dolphin 2> log.txt

(note that this will make Dolphin very slow), then reproduce the crash, and attach log.txt here? Thanks for your help.
Comment 2 Vishesh Handa 2013-08-07 07:58:48 UTC
Are you sure you were just transferring data? This crash is produced by some file getting selected and either the information panel getting populated or the tooltip being shown.

Anway, it still should not crash. The valgrind data would be quite helpful. I'm not sure why it's crashing, the code looks fine to me.
Comment 3 Frank Reininghaus 2013-08-07 08:14:39 UTC
(In reply to comment #2)
> Are you sure you were just transferring data? This crash is produced by some
> file getting selected 

Files which are pasted or dropped in the view are selected automatically.

> and either the information panel getting populated or
> the tooltip being shown.

It's the information panel, according to the backtrace.
Comment 4 Frank Reininghaus 2013-09-30 09:26:26 UTC
*** Bug 325445 has been marked as a duplicate of this bug. ***
Comment 5 Frank Reininghaus 2013-09-30 09:26:51 UTC
*** Bug 322259 has been marked as a duplicate of this bug. ***
Comment 6 Marco Rossi 2013-10-24 08:27:43 UTC
Application: dolphin (4.11.2)
KDE Platform Version: 4.11.2
Qt Version: 4.8.2
Operating System: Linux 3.11.6-031106-generic x86_64
Distribution: Ubuntu 12.04.3 LTS

-- Information about the crash:
Open Dolphin , trash any file.
I'm using latest kernel but it happens with any version since 3.2.* to 3.12.*
The crash can be reproduced every time.

-- Backtrace:
Application: Dolphin (dolphin), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fcafbdd1780 (LWP 2825))]

Thread 3 (Thread 0x7fcae0cf4700 (LWP 2826)):
#0  0x00007fcaf370705d in __pthread_mutex_unlock_usercnt (mutex=<optimized out>, decr=<optimized out>) at pthread_mutex_unlock.c:52
#1  __pthread_mutex_unlock (mutex=0x7fcadc000a60) at pthread_mutex_unlock.c:290
#2  0x00007fcaf32725e1 in g_mutex_unlock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fcaf32367fb in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fcaf3236f1b in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fcaf3237124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007fcaf74bd926 in QEventDispatcherGlib::processEvents (this=0x7fcadc0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#7  0x00007fcaf748ce62 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#8  0x00007fcaf748d0b7 in QEventLoop::exec (this=0x7fcae0cf3dd0, flags=...) at kernel/qeventloop.cpp:204
#9  0x00007fcaf738c077 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#10 0x00007fcaf746cb6f in QInotifyFileSystemWatcherEngine::run (this=0x92ead0) at io/qfilesystemwatcher_inotify.cpp:248
#11 0x00007fcaf738f09b in QThreadPrivate::start (arg=0x92ead0) at thread/qthread_unix.cpp:307
#12 0x00007fcaf3703e9a in start_thread (arg=0x7fcae0cf4700) at pthread_create.c:308
#13 0x00007fcafb6913fd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#14 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fcadbb7c700 (LWP 2827)):
#0  0x00007fcafb685a43 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007fcaf3236ff6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fcaf3237124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fcaf74bd926 in QEventDispatcherGlib::processEvents (this=0x7fcad40008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007fcaf748ce62 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fcaf748d0b7 in QEventLoop::exec (this=0x7fcadbb7bdd0, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007fcaf738c077 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00007fcaf746cb6f in QInotifyFileSystemWatcherEngine::run (this=0xa422c0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007fcaf738f09b in QThreadPrivate::start (arg=0xa422c0) at thread/qthread_unix.cpp:307
#9  0x00007fcaf3703e9a in start_thread (arg=0x7fcadbb7c700) at pthread_create.c:308
#10 0x00007fcafb6913fd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fcafbdd1780 (LWP 2825)):
[KCrash Handler]
#6  QList (this=0x7fff9c5690d0, l=...) at /usr/include/qt4/QtCore/qlist.h:122
#7  QForeachContainer (t=..., this=0x7fff9c5690d0) at /usr/include/qt4/QtCore/qglobal.h:2346
#8  KDirLister::Private::cachedItemsJobForUrl (this=0x0, url=...) at ../../kio/kio/kdirlister.cpp:281
#9  0x00007fcaf9352fbf in KDirListerCache::updateDirectory (this=0x962a40, _dir=...) at ../../kio/kio/kdirlister.cpp:694
#10 0x00007fcaf935538d in KDirListerCache::slotFilesAdded (this=0x962a40, dir=...) at ../../kio/kio/kdirlister.cpp:866
#11 0x00007fcaf74a2781 in QMetaObject::activate (sender=0x85d3a0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff9c5696d0) at kernel/qobject.cpp:3547
#12 0x00007fcaf9362735 in OrgKdeKDirNotifyInterface::FilesAdded (this=<optimized out>, _t1=...) at ./kdirnotify.moc:131
#13 0x00007fcaf93628fb in OrgKdeKDirNotifyInterface::qt_metacall (this=0x85d3a0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff9c569890) at ./kdirnotify.moc:107
#14 0x00007fcaf70b937b in QDBusConnectionPrivate::deliverCall (this=0x7120d0, object=0x85d3a0, msg=..., metaTypes=..., slotIdx=7) at qdbusintegrator.cpp:947
#15 0x00007fcaf74a7946 in QObject::event (this=0x85d3a0, e=<optimized out>) at kernel/qobject.cpp:1195
#16 0x00007fcaf7e8d7b4 in notify_helper (e=0x1009910, receiver=0x85d3a0, this=0x6acbb0) at kernel/qapplication.cpp:4556
#17 QApplicationPrivate::notify_helper (this=0x6acbb0, receiver=0x85d3a0, e=0x1009910) at kernel/qapplication.cpp:4528
#18 0x00007fcaf7e92583 in QApplication::notify (this=0x7fff9c56a290, receiver=0x85d3a0, e=0x1009910) at kernel/qapplication.cpp:4417
#19 0x00007fcaf8bc5e36 in KApplication::notify (this=0x7fff9c56a290, receiver=0x85d3a0, event=0x1009910) at ../../kdeui/kernel/kapplication.cpp:311
#20 0x00007fcaf748e32c in QCoreApplication::notifyInternal (this=0x7fff9c56a290, receiver=0x85d3a0, event=0x1009910) at kernel/qcoreapplication.cpp:915
#21 0x00007fcaf749210a in sendEvent (event=0x1009910, receiver=0x85d3a0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#22 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x678280) at kernel/qcoreapplication.cpp:1539
#23 0x00007fcaf74bd493 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#24 postEventSourceDispatch (s=<optimized out>) at kernel/qeventdispatcher_glib.cpp:279
#25 0x00007fcaf3236d13 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#26 0x00007fcaf3237060 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#27 0x00007fcaf3237124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#28 0x00007fcaf74bd8bf in QEventDispatcherGlib::processEvents (this=0x679b40, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#29 0x00007fcaf7f35cde in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#30 0x00007fcaf748ce62 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#31 0x00007fcaf748d0b7 in QEventLoop::exec (this=0x7fff9c56a220, flags=...) at kernel/qeventloop.cpp:204
#32 0x00007fcaf7492407 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#33 0x00007fcafb9af2c1 in kdemain (argc=6, argv=0x7fff9c56a828) at ../../../dolphin/src/main.cpp:93
#34 0x00007fcafb5be76d in __libc_start_main (main=0x400640 <main(int, char**)>, argc=6, ubp_av=0x7fff9c56a828, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff9c56a818) at libc-start.c:226
#35 0x0000000000400671 in _start ()
Comment 7 Christoph Feck 2013-11-23 21:44:42 UTC

*** This bug has been marked as a duplicate of bug 325076 ***