Bug 357517

Summary: Crash in the background parser
Product: [Applications] kdevelop Reporter: Cyrille Dunant <cyrille.dunant>
Component: Language Support: PHPAssignee: kdevelop-bugs-null
Status: RESOLVED WAITINGFORINFO    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version First Reported In: 4.90.90   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Cyrille Dunant 2016-01-04 14:28:31 UTC
Application: kdevelop (4.90.90)

Qt Version: 5.5.1
Operating System: Linux 4.3.3-5.g008195a-default x86_64
Distribution: "openSUSE Leap 42.1 (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:

The application crashes when loading the project. It parses a number of files before crashing but I have not been able to determine if it is a particular file causing the crash. I suspect not, as it seems to be crashing at a random point during the parsing.

The crash can be reproduced every time.

-- Backtrace:
Application: KDevelop (kdevelop), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f7fca8757c0 (LWP 15891))]

Thread 12 (Thread 0x7f7fab0ab700 (LWP 15892)):
#0  0x00007f7fc700ec1d in poll () at /lib64/libc.so.6
#1  0x00007f7fba738422 in  () at /usr/lib64/libxcb.so.1
#2  0x00007f7fba73a00f in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007f7fad4003c9 in QXcbEventReader::run() (this=0x1680900) at qxcbconnection.cpp:1229
#4  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x1680900) at thread/qthread_unix.cpp:331
#5  0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#6  0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 11 (Thread 0x7f7f9a218700 (LWP 15894)):
[KCrash Handler]
#6  0x00007f7fc76fec3e in QMutex::lock() (timeout=-1, this=0x3d60000052f) at thread/qmutex.cpp:641
#7  0x00007f7fc76fec3e in QMutex::lock() (this=<optimized out>) at thread/qmutex.cpp:215
#8  0x00007f7f8f0c8a0a in  () at /usr/lib64/libkdevphpduchain.so
#9  0x00007f7fc53b0064 in KDevelop::DUChainBase::setData(KDevelop::DUChainBaseData*, bool) () at /usr/lib64/libKDevPlatformLanguage.so.10
#10 0x00007f7fc539383b in  () at /usr/lib64/libKDevPlatformLanguage.so.10
#11 0x00007f7fc5398cd6 in  () at /usr/lib64/libKDevPlatformLanguage.so.10
#12 0x00007f7fc5395838 in  () at /usr/lib64/libKDevPlatformLanguage.so.10
#13 0x00007f7fc5372d41 in  () at /usr/lib64/libKDevPlatformLanguage.so.10
#14 0x00007f7fc5373ba3 in  () at /usr/lib64/libKDevPlatformLanguage.so.10
#15 0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x473a3d0) at thread/qthread_unix.cpp:331
#16 0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#17 0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 10 (Thread 0x7f7f8ff4f700 (LWP 15895)):
#0  0x00007f7fbfa83d14 in g_mutex_unlock () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f7fbfa41f86 in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f7fc7938dab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f7f880008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#3  0x00007f7fc78dfda3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f7f8ff4ee10, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#4  0x00007f7fc770166a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#5  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x7f7fbc5e06b8) at thread/qthread_unix.cpp:331
#6  0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#7  0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 9 (Thread 0x7f7f8ebe6700 (LWP 15898)):
#0  0x00007f7fc700ec1d in poll () at /lib64/libc.so.6
#1  0x00007f7fbfa41e64 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f7fbfa41f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f7fc7938dab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f7f800008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f7fc78dfda3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f7f8ebe5d30, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#5  0x00007f7fc770166a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#6  0x00007f7fc54580e6 in  () at /usr/lib64/libKDevPlatformLanguage.so.10
#7  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x49e4aa0) at thread/qthread_unix.cpp:331
#8  0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7f7f86422700 (LWP 16170)):
#0  0x00007f7fc03c005f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x53a61f0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x53a6628, mutex=mutex@entry=0x53a6620, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f7fc76feeb7 in QReadWriteLock::lockForRead() (this=0x53bfd30) at thread/qreadwritelock.cpp:155
#4  0x00007f7f8416b380 in  () at /usr/lib64/qt5/plugins/kdevplatform/24/kdevclangsupport.so
#5  0x00007f7fbca595a0 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f7fbca59ba0 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f7fbca58930 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f7fbca57f3a in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x553b7d0) at thread/qthread_unix.cpp:331
#10 0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7f7f85c21700 (LWP 16171)):
#0  0x00007f7fc03c005f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x387cd00) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x387dca0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f7fbca5665f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f7fbca5a43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f7fbca546cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f7fbca5a481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f7fbca546cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f7fbca58005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x7f7f74003190) at thread/qthread_unix.cpp:331
#10 0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7f7f85420700 (LWP 16172)):
#0  0x00007f7fc03c005f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x494f030) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x494eff8, mutex=mutex@entry=0x494eff0, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f7fc76feeb7 in QReadWriteLock::lockForRead() (this=0x494efd0) at thread/qreadwritelock.cpp:155
#4  0x00007f7f993ae5f6 in  () at /usr/lib64/qt5/plugins/kdevplatform/24/kdevcmakemanager.so
#5  0x00007f7fbca595a0 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f7fbca59ba0 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f7fbca58930 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f7fbca57f3a in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x7f7f78002d90) at thread/qthread_unix.cpp:331
#10 0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f7f84c1f700 (LWP 16173)):
#0  0x00007f7fc03c005f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x494f030) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x494eff8, mutex=mutex@entry=0x494eff0, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f7fc76feeb7 in QReadWriteLock::lockForRead() (this=0x494efd0) at thread/qreadwritelock.cpp:155
#4  0x00007f7f993ae5f6 in  () at /usr/lib64/qt5/plugins/kdevplatform/24/kdevcmakemanager.so
#5  0x00007f7fbca595a0 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f7fbca59ba0 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f7fbca58930 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f7fbca57f3a in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x7f7f6c002d90) at thread/qthread_unix.cpp:331
#10 0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f7f6bfff700 (LWP 16174)):
#0  0x00007f7fc03c005f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x53a61f0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f7fc77073ab in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x53a6628, mutex=mutex@entry=0x53a6620, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f7fc76feeb7 in QReadWriteLock::lockForRead() (this=0x53bfd30) at thread/qreadwritelock.cpp:155
#4  0x00007f7f8416b380 in  () at /usr/lib64/qt5/plugins/kdevplatform/24/kdevclangsupport.so
#5  0x00007f7fbca595a0 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f7fbca59ba0 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f7fbca58930 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f7fbca57f3a in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x7f7f70003190) at thread/qthread_unix.cpp:331
#10 0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f7f55e31700 (LWP 16175)):
#0  0x00007f7fc700aced in read () at /lib64/libc.so.6
#1  0x00007f7fbfa82b60 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f7fbfa41999 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f7fbfa41df8 in  () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f7fbfa41f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#5  0x00007f7fc7938dab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f7f500008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#6  0x00007f7fc78dfda3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f7f55e30d30, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#7  0x00007f7fc770166a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#8  0x00007f7fc54580e6 in  () at /usr/lib64/libKDevPlatformLanguage.so.10
#9  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x55b3230) at thread/qthread_unix.cpp:331
#10 0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f7f4ee24700 (LWP 16192)):
#0  0x00007f7fbfa83d10 in g_mutex_unlock () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f7fbfa41538 in g_main_context_prepare () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f7fbfa41d80 in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f7fbfa41f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f7fc7938dab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f7f3c0031e0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#5  0x00007f7fc78dfda3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f7f4ee23df0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f7fc770166a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#7  0x00007f7fc115ee08 in  () at /usr/lib64/libQt5Qml.so.5
#8  0x00007f7fc770638f in QThreadPrivate::start(void*) (arg=0x58711c0) at thread/qthread_unix.cpp:331
#9  0x00007f7fc03bc0a4 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f7fc701704d in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f7fca8757c0 (LWP 15891)):
#0  0x00007f7fbfa83cf9 in g_mutex_lock () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f7fbfa418fc in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f7fbfa41df8 in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f7fbfa41f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f7fc7938dab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x16afdf0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#5  0x00007f7fc78dfda3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffc3026e880, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f7fc78e7956 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1229
#7  0x000000000040eedb in main ()

Reported using DrKonqi
Comment 1 Kevin Funk 2016-01-04 14:37:58 UTC
Please install debug symbols, then try to reproduce the crash.

Also see: https://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports

```
Thread 11 (Thread 0x7f7f9a218700 (LWP 15894)):
[KCrash Handler]
#6  0x00007f7fc76fec3e in QMutex::lock() (timeout=-1, this=0x3d60000052f) at thread/qmutex.cpp:641
#7  0x00007f7fc76fec3e in QMutex::lock() (this=<optimized out>) at thread/qmutex.cpp:215
#8  0x00007f7f8f0c8a0a in  () at /usr/lib64/libkdevphpduchain.so
#9  0x00007f7fc53b0064 in KDevelop::DUChainBase::setData(KDevelop::DUChainBaseData*, bool) () at /usr/lib64/libKDevPlatformLanguage.so.10
```

^ This is indicates the problem is the KDevelop PHP support plugin, FWIW.
Comment 2 Cyrille Dunant 2016-01-04 14:50:41 UTC
I uninstalled the PHP plugin, and the crash disappeared. It may be that trying to parse the pure c++ project I loaded had side effects...
Comment 3 Milian Wolff 2016-01-04 15:31:14 UTC
The PHP plugin tries to parse the builtin PHP function file when KDevelop gets loaded, which may have lead to the crash above. I'd still be interested in seeing a proper backtrace for this crash, or a way to reproduce it.
Comment 4 Cyrille Dunant 2016-01-04 15:39:50 UTC
There is your (hopefully correct) trace


Application: KDevelop (kdevelop), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f54f2d687c0 (LWP 23066))]

Thread 20 (Thread 0x7f54d359e700 (LWP 23067)):
#0  0x00007f54ef501c1d in poll () at /lib64/libc.so.6
#1  0x00007f54e2c2b422 in  () at /usr/lib64/libxcb.so.1
#2  0x00007f54e2c2d00f in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007f54d58f33c9 in QXcbEventReader::run() (this=0xa17900) at qxcbconnection.cpp:1229
#4  0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0xa17900) at thread/qthread_unix.cpp:331
#5  0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#6  0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 19 (Thread 0x7f54c2832700 (LWP 23069)):
[KCrash Handler]
#6  0x00007f54efbf1c3e in QMutex::lock() (timeout=-1, this=0x46200000461) at thread/qmutex.cpp:641
#7  0x00007f54efbf1c3e in QMutex::lock() (this=this@entry=0x7f54ee808040 <KDevelop::(anonymous namespace)::Q_QGS_temporaryHashClassDeclarationDatabaseClassesStatic::innerFunction()::holder+32>) at thread/qmutex.cpp:215
#8  0x00007f54afbb2a0a in KDevelop::DUChainItemFactory<Php::ClassDeclaration, Php::ClassDeclarationData>::callDestructor(KDevelop::DUChainBaseData*) const (index=<optimized out>, this=0x7f54ee808020 <KDevelop::(anonymous namespace)::Q_QGS_temporaryHashClassDeclarationDatabaseClassesStatic::innerFunction()::holder>) at /usr/include/kdevplatform/language/duchain/appendedlist.h:167
#9  0x00007f54afbb2a0a in KDevelop::DUChainItemFactory<Php::ClassDeclaration, Php::ClassDeclarationData>::callDestructor(KDevelop::DUChainBaseData*) const (this=0x7f5494012800) at /usr/include/kdevplatform/language/duchain/classdeclaration.h:87
#10 0x00007f54afbb2a0a in KDevelop::DUChainItemFactory<Php::ClassDeclaration, Php::ClassDeclarationData>::callDestructor(KDevelop::DUChainBaseData*) const (this=0x7f5494012800) at /usr/include/kdevplatform/language/duchain/classdeclaration.h:87
#11 0x00007f54afbb2a0a in KDevelop::DUChainItemFactory<Php::ClassDeclaration, Php::ClassDeclarationData>::callDestructor(KDevelop::DUChainBaseData*) const (this=0x7f5494012800) at /usr/include/kdevplatform/language/duchain/classdeclaration.h:88
#12 0x00007f54afbb2a0a in KDevelop::DUChainItemFactory<Php::ClassDeclaration, Php::ClassDeclarationData>::callDestructor(KDevelop::DUChainBaseData*) const (this=0x7f5494012800, __in_chrg=<optimized out>) at /usr/include/kdevplatform/language/duchain/classdeclaration.h:69
#13 0x00007f54afbb2a0a in KDevelop::DUChainItemFactory<Php::ClassDeclaration, Php::ClassDeclarationData>::callDestructor(KDevelop::DUChainBaseData*) const (this=0x7f5494012800, __in_chrg=<optimized out>) at /usr/src/debug/kdevelop5-plugin-php-4.9.90git.20151026T013501~f2d1ab2/duchain/declarations/classdeclaration.h:46
#14 0x00007f54afbb2a0a in KDevelop::DUChainItemFactory<Php::ClassDeclaration, Php::ClassDeclarationData>::callDestructor(KDevelop::DUChainBaseData*) const (this=<optimized out>, data=0x7f5494012800) at /usr/include/kdevplatform/language/duchain/duchainregister.h:70
#15 0x00007f54ed8a3064 in KDevelop::DUChainBase::setData(KDevelop::DUChainBaseData*, bool) (this=0x7f5494021700, data=0x7f54bc147ca0, constructorCalled=<optimized out>) at /usr/src/debug/kdevplatform-4.9.90git.20151229T112205~82d6d70/language/duchain/duchainbase.cpp:85
#16 0x00007f54ed88683b in (anonymous namespace)::saveDUChainItem(QList<QPair<QByteArray, unsigned int> >&, KDevelop::DUChainBase&, uint&, bool) (data=..., item=..., totalDataOffset=@0x7f54c2831c2c: 550269, isSharedDataItem=isSharedDataItem@entry=false) at /usr/src/debug/kdevplatform-4.9.90git.20151229T112205~82d6d70/language/duchain/topducontextdynamicdata.cpp:86
#17 0x00007f54ed88bcd6 in KDevelop::TopDUContextDynamicData::DUChainItemStorage<KDevelop::Declaration*>::storeData(unsigned int&, QList<QPair<QByteArray, unsigned int> > const&) (this=this@entry=0x7f54940214b0, currentDataOffset=@0x7f54c2831c2c: 550269, oldData=...) at /usr/src/debug/kdevplatform-4.9.90git.20151229T112205~82d6d70/language/duchain/topducontextdynamicdata.cpp:295
#18 0x00007f54ed888838 in KDevelop::TopDUContextDynamicData::store() (this=0x7f5494021480) at /usr/src/debug/kdevplatform-4.9.90git.20151229T112205~82d6d70/language/duchain/topducontextdynamicdata.cpp:699
#19 0x00007f54ed865d41 in KDevelop::DUChainPrivate::doMoreCleanup(int, bool) (this=0x7f54ee00aba0 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder>, retries=retries@entry=1, needLockRepository=needLockRepository@entry=true) at /usr/src/debug/kdevplatform-4.9.90git.20151229T112205~82d6d70/language/duchain/duchain.cpp:746
#20 0x00007f54ed866ba3 in KDevelop::DUChainPrivate::CleanupThread::run() (this=0x3ad0d90) at /usr/src/debug/kdevplatform-4.9.90git.20151229T112205~82d6d70/language/duchain/duchain.cpp:289
#21 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x3ad0d90) at thread/qthread_unix.cpp:331
#22 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#23 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 18 (Thread 0x7f54b7ffe700 (LWP 23080)):
#0  0x00007f54e7f3498d in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f54e7f34df8 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f54e7f34f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f54efe2bdab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f54b0003c20, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f54efdd2da3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f54b7ffdd30, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#5  0x00007f54efbf466a in QThread::exec() (this=this@entry=0x3fbfd30) at thread/qthread.cpp:503
#6  0x00007f54ed94b0e6 in KDevelop::CompletionWorkerThread::run() (this=0x3fbfd30) at /usr/src/debug/kdevplatform-4.9.90git.20151229T112205~82d6d70/language/codecompletion/codecompletionmodel.cpp:88
#7  0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x3fbfd30) at thread/qthread_unix.cpp:331
#8  0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 17 (Thread 0x7f54b5626700 (LWP 23091)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x2c108e0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x2c173c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54e4f4965f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f54e4f4d43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4b005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x3fd2cf0) at thread/qthread_unix.cpp:331
#10 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 16 (Thread 0x7f54b4e25700 (LWP 23092)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xd8b210) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0xd8b458, mutex=mutex@entry=0xd8b450, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54efbf1eb7 in QReadWriteLock::lockForRead() (this=0x100ec90) at thread/qreadwritelock.cpp:155
#4  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=<synthetic pointer>) at /usr/include/qt5/QtCore/qreadwritelock.h:98
#5  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (areadWriteLock=<optimized out>, this=<synthetic pointer>) at /usr/include/qt5/QtCore/qreadwritelock.h:117
#6  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=0x10225b0) at /usr/src/debug/kdevelop-4.9.90git.20151229T112129~d59e6df/languages/clang/clangparsejob.cpp:214
#7  0x00007f54e4f4c5a0 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4cba0 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54e4f4b930 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#10 0x00007f54e4f4af3a in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#11 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f5494011460) at thread/qthread_unix.cpp:331
#12 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#13 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 15 (Thread 0x7f54b6699700 (LWP 23093)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xd8b210) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0xd8b458, mutex=mutex@entry=0xd8b450, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54efbf1eb7 in QReadWriteLock::lockForRead() (this=0x100ec90) at thread/qreadwritelock.cpp:155
#4  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=<synthetic pointer>) at /usr/include/qt5/QtCore/qreadwritelock.h:98
#5  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (areadWriteLock=<optimized out>, this=<synthetic pointer>) at /usr/include/qt5/QtCore/qreadwritelock.h:117
#6  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=0xd8ab70) at /usr/src/debug/kdevelop-4.9.90git.20151229T112129~d59e6df/languages/clang/clangparsejob.cpp:214
#7  0x00007f54e4f4c5a0 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4cba0 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54e4f4b930 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#10 0x00007f54e4f4af3a in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#11 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f548c03a5f0) at thread/qthread_unix.cpp:331
#12 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#13 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 14 (Thread 0x7f54a6ffb700 (LWP 23094)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xd8b210) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0xd8b458, mutex=mutex@entry=0xd8b450, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54efbf1eb7 in QReadWriteLock::lockForRead() (this=0x100ec90) at thread/qreadwritelock.cpp:155
#4  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=<synthetic pointer>) at /usr/include/qt5/QtCore/qreadwritelock.h:98
#5  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (areadWriteLock=<optimized out>, this=<synthetic pointer>) at /usr/include/qt5/QtCore/qreadwritelock.h:117
#6  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=0x1059900) at /usr/src/debug/kdevelop-4.9.90git.20151229T112129~d59e6df/languages/clang/clangparsejob.cpp:214
#7  0x00007f54e4f4c5a0 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4cba0 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54e4f4b930 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#10 0x00007f54e4f4af3a in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#11 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f54a0119380) at thread/qthread_unix.cpp:331
#12 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#13 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 13 (Thread 0x7f54aadd5700 (LWP 23095)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xd8b210) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0xd8b458, mutex=mutex@entry=0xd8b450, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54efbf1eb7 in QReadWriteLock::lockForRead() (this=0x100ec90) at thread/qreadwritelock.cpp:155
#4  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=<synthetic pointer>) at /usr/include/qt5/QtCore/qreadwritelock.h:98
#5  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (areadWriteLock=<optimized out>, this=<synthetic pointer>) at /usr/include/qt5/QtCore/qreadwritelock.h:117
#6  0x00007f54982af380 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=0x102d3d0) at /usr/src/debug/kdevelop-4.9.90git.20151229T112129~d59e6df/languages/clang/clangparsejob.cpp:214
#7  0x00007f54e4f4c5a0 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4cba0 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54e4f4b930 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib64/libKF5ThreadWeaver.so.5
#10 0x00007f54e4f4af3a in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#11 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f54880010c0) at thread/qthread_unix.cpp:331
#12 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#13 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 12 (Thread 0x7f54aa1a8700 (LWP 23096)):
#0  0x00007f54ef4fdced in read () at /lib64/libc.so.6
#1  0x00007f54e7f75b60 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f54e7f34999 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f54e7f34df8 in  () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f54e7f34f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#5  0x00007f54efe2bdab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5490003a20, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#6  0x00007f54efdd2da3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f54aa1a7df0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#7  0x00007f54efbf466a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#8  0x00007f54e9651e08 in  () at /usr/lib64/libQt5Qml.so.5
#9  0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x4573040) at thread/qthread_unix.cpp:331
#10 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 11 (Thread 0x7f54a67fa700 (LWP 23101)):
#0  0x00007f54ef501c1d in poll () at /lib64/libc.so.6
#1  0x00007f54e7f34e64 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f54e7f34f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f54efe2bdab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f547c0010f0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f54efdd2da3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f54a67f9e10, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#5  0x00007f54efbf466a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#6  0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f54e4ad36b8 <KDevelop::(anonymous namespace)::Q_QGS_s_parsingThread::innerFunction()::holder+8>) at thread/qthread_unix.cpp:331
#7  0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 10 (Thread 0x7f54d0c70700 (LWP 23103)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xecc9a0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0xe941a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54e4f4965f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f54e4f4d43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#10 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#11 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#12 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#13 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#14 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#15 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#16 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#17 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#18 0x00007f54e4f4b005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#19 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0xda1340) at thread/qthread_unix.cpp:331
#20 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#21 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 9 (Thread 0x7f5483fff700 (LWP 23104)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xecc9a0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0xe941a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54e4f4965f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f54e4f4d43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#10 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#11 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#12 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#13 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#14 0x00007f54e4f4b005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#15 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f54c408fe40) at thread/qthread_unix.cpp:331
#16 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#17 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7f54837fe700 (LWP 23105)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xecc9a0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0xe941a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54e4f4965f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f54e4f4d43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f54e4f4b005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f54780012d0) at thread/qthread_unix.cpp:331
#8  0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7f5482ffd700 (LWP 23106)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xecc9a0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0xe941a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54e4f4965f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f54e4f4d43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f54e4f4b005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f5470001d90) at thread/qthread_unix.cpp:331
#8  0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7f54827fc700 (LWP 23107)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xecc9a0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0xe941a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54e4f4965f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f54e4f4d43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f54e4f4b005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f5474002190) at thread/qthread_unix.cpp:331
#8  0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f5481ffb700 (LWP 23108)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xecc9a0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0xe941a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54e4f4965f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f54e4f4d43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#10 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#11 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#12 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#13 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#14 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#15 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#16 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#17 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#18 0x00007f54e4f4b005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#19 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f5468002190) at thread/qthread_unix.cpp:331
#20 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#21 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f54817fa700 (LWP 23109)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xecc9a0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0xe941a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54e4f4965f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f54e4f4d43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#10 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#11 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#12 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#13 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#14 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#15 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#16 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#17 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#18 0x00007f54e4f4b005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#19 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f546c002b90) at thread/qthread_unix.cpp:331
#20 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#21 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f5480ff9700 (LWP 23110)):
#0  0x00007f54e88b305f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xecc9a0) at thread/qwaitcondition_unix.cpp:136
#2  0x00007f54efbfa3ab in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0xe941a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#3  0x00007f54e4f4965f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#4  0x00007f54e4f4d43a in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#5  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#6  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#7  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#8  0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#9  0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#10 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#11 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#12 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#13 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#14 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#15 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#16 0x00007f54e4f4d481 in  () at /usr/lib64/libKF5ThreadWeaver.so.5
#17 0x00007f54e4f476cb in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib64/libKF5ThreadWeaver.so.5
#18 0x00007f54e4f4b005 in ThreadWeaver::Thread::run() () at /usr/lib64/libKF5ThreadWeaver.so.5
#19 0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0x7f5460002f90) at thread/qthread_unix.cpp:331
#20 0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#21 0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f544b778700 (LWP 23112)):
#0  0x00007f54ef501c1d in poll () at /lib64/libc.so.6
#1  0x00007f54e7f34e64 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f54e7f34f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f54efe2bdab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f54440008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f54efdd2da3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f544b777d30, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#5  0x00007f54efbf466a in QThread::exec() (this=this@entry=0xd57db0) at thread/qthread.cpp:503
#6  0x00007f54ed94b0e6 in KDevelop::CompletionWorkerThread::run() (this=0xd57db0) at /usr/src/debug/kdevplatform-4.9.90git.20151229T112205~82d6d70/language/codecompletion/codecompletionmodel.cpp:88
#7  0x00007f54efbf938f in QThreadPrivate::start(void*) (arg=0xd57db0) at thread/qthread_unix.cpp:331
#8  0x00007f54e88af0a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f54ef50a04d in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f54f2d687c0 (LWP 23066)):
#0  0x00007f54ef4fdd4d in write () at /lib64/libc.so.6
#1  0x00007f54e7f75bed in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f54e7f315bc in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f54e7f34ca0 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f54e7f34ed8 in  () at /usr/lib64/libglib-2.0.so.0
#5  0x00007f54e7f34f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#6  0x00007f54efe2bd8c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0xa3f570, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#7  0x00007f54efdd2da3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fff86bdcfd0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#8  0x00007f54efdda956 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1229
#9  0x00007f54f031e7cc in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1527
#10 0x00007f54f0ab6605 in QApplication::exec() () at kernel/qapplication.cpp:2978
#11 0x000000000040eedb in main(int, char**) (argc=1, argv=<optimized out>) at /usr/src/debug/kdevelop-4.9.90git.20151229T112129~d59e6df/app/main.cpp:652