Bug 259101 - KDevelop crashes sometimes while browsing tabs
Summary: KDevelop crashes sometimes while browsing tabs
Status: RESOLVED DUPLICATE of bug 247412
Alias: None
Product: kdevelop
Classification: Applications
Component: general (other bugs)
Version First Reported In: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: 4.2.0
Assignee: kdevelop-bugs-null
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-07 12:08 UTC by Julio J.
Modified: 2010-12-07 13:05 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (12.20 KB, text/plain)
2010-12-07 12:26 UTC, Julio J.
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Julio J. 2010-12-07 12:08:59 UTC
Application: kdevelop (4.0.0 (using KDevPlatform 1.0.0))
KDE Platform Version: 4.4.2 (KDE 4.4.2)
Qt Version: 4.6.2
Operating System: Linux 2.6.32-26-generic x86_64
Distribution: Ubuntu 10.04.1 LTS

-- Information about the crash:
While having several remote files opened (remote files mounted locally through sshfs), sometimes the app crashes just while browsing between opened tabs.

The crash can be reproduced some of the time.

 -- Backtrace:
Application: KDevelop (kdevelop.bin), signal: Segmentation fault
[Current thread is 1 (Thread 0x7fb2aeb8f760 (LWP 6839))]

Thread 8 (Thread 0x7fb29adbd710 (LWP 6840)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:211
#1  0x00007fb2ad335692 in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x259bd60, time=200000) at thread/qwaitcondition_unix.cpp:85
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x259bd60, time=200000) at thread/qwaitcondition_unix.cpp:159
#3  0x00007fb2a8dbc06e in KDevelop::DUChainPrivate::CleanupThread::run (this=0x259bd40) at ../../language/duchain/duchain.cpp:286
#4  0x00007fb2ad334775 in QThreadPrivate::start (arg=0x259bd40) at thread/qthread_unix.cpp:248
#5  0x00007fb2abd769ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#6  0x00007fb2ac07370d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7fb29081c710 (LWP 6841)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fb2ad33572b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x2372900, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2372900, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007fb2a41f3026 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x2e460d0, th=0x2e3da00) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fb2a41f56ab in ThreadWeaver::WorkingHardState::applyForWork (this=0x23a6c40, th=0x2e3da00) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fb2a41f3bff in ThreadWeaver::ThreadRunHelper::run (this=0x7fb29081be00, parent=0x2e460d0, th=0x2e3da00) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00007fb2a41f4168 in ThreadWeaver::Thread::run (this=0x2e3da00) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x00007fb2ad334775 in QThreadPrivate::start (arg=0x2e3da00) at thread/qthread_unix.cpp:248
#8  0x00007fb2abd769ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#9  0x00007fb2ac07370d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7fb287932710 (LWP 6849)):
#0  0x00007fb2ac066f93 in *__GI___poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007fb2a67574a9 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007fb2a67578fc in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x00007fb2ad452566 in QEventDispatcherGlib::processEvents (this=0x30ba090, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#4  0x00007fb2ad427992 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#5  0x00007fb2ad427d6c in QEventLoop::exec (this=0x7fb287931db0, flags=) at kernel/qeventloop.cpp:201
#6  0x00007fb2ad331d59 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#7  0x00007fb2ad408178 in QInotifyFileSystemWatcherEngine::run (this=0x30b9500) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007fb2ad334775 in QThreadPrivate::start (arg=0x30b9500) at thread/qthread_unix.cpp:248
#9  0x00007fb2abd769ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#10 0x00007fb2ac07370d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fb286758710 (LWP 6873)):
#0  0x00007fb2ac066f93 in *__GI___poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007fb2a67574a9 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007fb2a67578fc in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x00007fb2ad452566 in QEventDispatcherGlib::processEvents (this=0x3c666e0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#4  0x00007fb2ad427992 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#5  0x00007fb2ad427d6c in QEventLoop::exec (this=0x7fb286757df0, flags=) at kernel/qeventloop.cpp:201
#6  0x00007fb2ad331d59 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#7  0x00007fb2ad334775 in QThreadPrivate::start (arg=0x3cd0250) at thread/qthread_unix.cpp:248
#8  0x00007fb2abd769ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#9  0x00007fb2ac07370d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fb285f57710 (LWP 6874)):
#0  0x00007fb2ac03739d in nanosleep () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007fb2ac06c844 in usleep (useconds=<value optimized out>) at ../sysdeps/unix/sysv/linux/usleep.c:33
#2  0x00007fb2a8dff4ae in KDevelop::DUChainLock::lockForWrite (this=0x25a4188, timeout=0) at ../../language/duchain/duchainlock.cpp:201
#3  0x00007fb2a8dff564 in KDevelop::DUChainWriteLocker::lock (this=0x7fb285f549f0) at ../../language/duchain/duchainlock.cpp:299
#4  0x00007fb286c04633 in Php::ContextBuilder::build(KDevelop::IndexedString const&, Php::AstNode*, KDevelop::ReferencedTopDUContext, bool) () from /usr/lib/libkdev4phpduchain.so
#5  0x00007fb286c000ad in Php::DeclarationBuilder::build(KDevelop::IndexedString const&, Php::AstNode*, KDevelop::ReferencedTopDUContext, bool) () from /usr/lib/libkdev4phpduchain.so
#6  0x00007fb286e6665f in ?? () from /usr/lib/kde4/kdevphplanguagesupport.so
#7  0x00007fb286e662e2 in ?? () from /usr/lib/kde4/kdevphplanguagesupport.so
#8  0x00007fb286e662e2 in ?? () from /usr/lib/kde4/kdevphplanguagesupport.so
#9  0x00007fb2a41f48dd in ThreadWeaver::JobRunHelper::runTheJob (this=0x7fb285f56d70, th=0x3d2f400, job=0x4c3af60) at ../../../threadweaver/Weaver/Job.cpp:106
#10 0x00007fb2a41f4bde in ThreadWeaver::Job::execute (this=0x4c3af60, th=0x3d2f400) at ../../../threadweaver/Weaver/Job.cpp:135
#11 0x00007fb2a41f3bcf in ThreadWeaver::ThreadRunHelper::run (this=0x7fb285f56e00, parent=0x2399a60, th=0x3d2f400) at ../../../threadweaver/Weaver/Thread.cpp:95
#12 0x00007fb2a41f4168 in ThreadWeaver::Thread::run (this=0x3d2f400) at ../../../threadweaver/Weaver/Thread.cpp:142
#13 0x00007fb2ad334775 in QThreadPrivate::start (arg=0x3d2f400) at thread/qthread_unix.cpp:248
#14 0x00007fb2abd769ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#15 0x00007fb2ac07370d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#16 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fb285756710 (LWP 6875)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fb2ad33572b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x238ec00, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x238ec00, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007fb2a41f3026 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x2399a60, th=0x3b9c2a0) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fb2a41f56ab in ThreadWeaver::WorkingHardState::applyForWork (this=0x2391cb0, th=0x3b9c2a0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fb2a41f56c4 in ThreadWeaver::WorkingHardState::applyForWork (this=0x2391cb0, th=0x3b9c2a0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007fb2a41f3bff in ThreadWeaver::ThreadRunHelper::run (this=0x7fb285755e00, parent=0x2399a60, th=0x3b9c2a0) at ../../../threadweaver/Weaver/Thread.cpp:87
#7  0x00007fb2a41f4168 in ThreadWeaver::Thread::run (this=0x3b9c2a0) at ../../../threadweaver/Weaver/Thread.cpp:142
#8  0x00007fb2ad334775 in QThreadPrivate::start (arg=0x3b9c2a0) at thread/qthread_unix.cpp:248
#9  0x00007fb2abd769ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#10 0x00007fb2ac07370d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fb27fb3d710 (LWP 7534)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fb2a54bc2a6 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x7fb2a579a220) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2304
#2  0x00007fb2a54bc2e9 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=0x7fb2a57a82ec) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1438
#3  0x00007fb2abd769ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#4  0x00007fb2ac07370d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fb2aeb8f760 (LWP 6839)):
[KCrash Handler]
#5  QMutex::tryLock (this=0x3d98ef0, timeout=10) at thread/qmutex.cpp:316
#6  0x00007fb2a8d7d3b3 in OptionalMutexLocker (this=0x7fb2940047c0) at ../../language/editor/documentrangeobject.cpp:67
#7  KDevelop::DocumentRangeObject::syncFromSmart (this=0x7fb2940047c0) at ../../language/editor/documentrangeobject.cpp:83
#8  0x00007fb2a8d7d699 in KDevelop::DocumentRangeObject::range (this=0x3d98ef0) at ../../language/editor/documentrangeobject.cpp:217
#9  0x00007fb2a8e22b07 in KDevelop::DUChainUtils::collectItems (context=<value optimized out>, filter=...) at ../../language/duchain/duchainutils.cpp:361
#10 0x00007fb289cdea41 in CreateOutlineDialog::start (this=0x6071820) at ../../../plugins/quickopen/quickopenplugin.cpp:1193
#11 0x00007fb289cdee84 in OutlineQuickopenWidgetCreator::createWidget (this=0x36b7d00) at ../../../plugins/quickopen/quickopenplugin.cpp:1239
#12 0x00007fb289cd53ba in QuickOpenLineEdit::focusInEvent (this=0x328a420, ev=<value optimized out>) at ../../../plugins/quickopen/quickopenplugin.cpp:1350
#13 0x00007fb2ac837e1a in QWidget::event (this=0x328a420, event=0x7fffa69b7a60) at kernel/qwidget.cpp:8107
#14 0x00007fb2acbedce3 in QLineEdit::event (this=0x328a420, e=0x7fffa69b7a60) at widgets/qlineedit.cpp:1474
#15 0x00007fb2ada43dca in KLineEdit::event (this=0x328a420, ev=0x7fffa69b7a60) at ../../kdeui/widgets/klineedit.cpp:1329
#16 0x00007fb2ac7e222c in QApplicationPrivate::notify_helper (this=0x18f0520, receiver=0x328a420, e=0x7fffa69b7a60) at kernel/qapplication.cpp:4300
#17 0x00007fb2ac7e86fb in QApplication::notify (this=0x7fffa69b8fc0, receiver=0x328a420, e=0x7fffa69b7a60) at kernel/qapplication.cpp:4183
#18 0x00007fb2ad970526 in KApplication::notify (this=0x7fffa69b8fc0, receiver=0x328a420, event=0x7fffa69b7a60) at ../../kdeui/kernel/kapplication.cpp:302
#19 0x00007fb2ad42906c in QCoreApplication::notifyInternal (this=0x7fffa69b8fc0, receiver=0x328a420, event=0x7fffa69b7a60) at kernel/qcoreapplication.cpp:704
#20 0x00007fb2ac7e7416 in QApplicationPrivate::setFocusWidget (focus=0x328a420, reason=Qt::MouseFocusReason) at kernel/qapplication.cpp:2137
#21 0x00007fb2ac833591 in QWidget::setFocus (this=0x328a420, reason=Qt::MouseFocusReason) at kernel/qwidget.cpp:6135
#22 0x00007fb2ac7ea3ed in QApplication::notify (this=0x7fffa69b8fc0, receiver=0x328a420, e=0x7fffa69b81a0) at kernel/qapplication.cpp:3822
#23 0x00007fb2ad970526 in KApplication::notify (this=0x7fffa69b8fc0, receiver=0x328a420, event=0x7fffa69b81a0) at ../../kdeui/kernel/kapplication.cpp:302
#24 0x00007fb2ad42906c in QCoreApplication::notifyInternal (this=0x7fffa69b8fc0, receiver=0x328a420, event=0x7fffa69b81a0) at kernel/qcoreapplication.cpp:704
#25 0x00007fb2ac7e80ae in QCoreApplication::sendEvent (receiver=0x328a420, event=0x7fffa69b81a0, alienWidget=0x328a420, nativeWidget=0x2faff70, buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#26 QApplicationPrivate::sendMouseEvent (receiver=0x328a420, event=0x7fffa69b81a0, alienWidget=0x328a420, nativeWidget=0x2faff70, buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at kernel/qapplication.cpp:2965
#27 0x00007fb2ac867f65 in QETWidget::translateMouseEvent (this=0x2faff70, event=<value optimized out>) at kernel/qapplication_x11.cpp:4368
#28 0x00007fb2ac8668ac in QApplication::x11ProcessEvent (this=<value optimized out>, event=0x7fffa69b8ac0) at kernel/qapplication_x11.cpp:3501
#29 0x00007fb2ac892882 in x11EventSourceDispatch (s=0x1d2f250, callback=<value optimized out>, user_data=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:146
#30 0x00007fb2a67538c2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#31 0x00007fb2a6757748 in ?? () from /lib/libglib-2.0.so.0
#32 0x00007fb2a67578fc in g_main_context_iteration () from /lib/libglib-2.0.so.0
#33 0x00007fb2ad452513 in QEventDispatcherGlib::processEvents (this=0x18d2f50, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#34 0x00007fb2ac89246e in QGuiEventDispatcherGlib::processEvents (this=0x3d98ef0, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#35 0x00007fb2ad427992 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#36 0x00007fb2ad427d6c in QEventLoop::exec (this=0x7fffa69b8df0, flags=) at kernel/qeventloop.cpp:201
#37 0x00007fb2ad42baab in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#38 0x00000000004088cf in _start ()

Possible duplicates by query: bug 256113, bug 247884, bug 247412.

Reported using DrKonqi
Comment 1 Julio J. 2010-12-07 12:26:24 UTC
Created attachment 54243 [details]
New crash information added by DrKonqi

I noticed that the background parser was behaving weirdly before the crash, so it might not have to do with the actual browsing of the tabs. The highlighting wasn't working properly and it's stayed on 20% during almost 3 min and then it crashed.
Comment 2 Milian Wolff 2010-12-07 12:52:16 UTC
if you can reproduce it, run kdevelop through valgrind:

valgrind --track-origins=yes --num-callers=25 kdevelop 

But first update to KDevelop 4.1.1, KDevelop 4.0 is outdated.

*** This bug has been marked as a duplicate of bug 247412 ***
Comment 3 Julio J. 2010-12-07 13:05:25 UTC
I just followed the assistant that appeared after the crash. I don't know if it's something from Kubuntu or from KDE itself but I guess it'd be useful to include on there all the info you might need, the report had 3 stars (whatever that means) out of 3 so I thought it would be good enough.

On the other hand, the version I have is the version my LTS distribution offers so I'll update as soon as my distribution does.

As soon as I have time I'll attach the output of valgrind, now I'm working and I already had lost enough time :P

I will also test it at home with the newest version.

Best!