Bug 367841 - Crash during parsing of cmake/C++/Python files
Summary: Crash during parsing of cmake/C++/Python files
Status: RESOLVED DUPLICATE of bug 363269
Alias: None
Product: kdevelop
Classification: Applications
Component: general (show other bugs)
Version: 5.0.0
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: kdevelop-bugs-null
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2016-08-26 08:57 UTC by Axel Kellermann
Modified: 2016-09-08 21:36 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments
ASAN output of heap-buffer-overflow error during parsing of CMake file (5.64 KB, text/plain)
2016-09-08 19:31 UTC, Axel Kellermann
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Axel Kellermann 2016-08-26 08:57:34 UTC
Application: kdevelop (5.0.0)
 (Compiled from sources)
Qt Version: 5.5.1
Operating System: Linux 4.4.0-34-generic x86_64
Distribution: Ubuntu 16.04.1 LTS

-- Information about the crash:
I'm working on a largeish project with a mixture of roughly 5000 Python and C++ source files.
After starting kdevelop, it starts to parse the source tree, and then crashes with a very high
probability while processing the source files.

The crash can be reproduced every time.

-- Backtrace:
Application: KDevelop (kdevelop), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
[Current thread is 1 (Thread 0x7f1edd6318c0 (LWP 21517))]

Thread 15 (Thread 0x7f1e8d087700 (LWP 21643)):
#0  0x00000030014fae8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f1eee30039c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f1eee3004ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f1ef5098a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f1ef503fdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f1ef4e5c8a4 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00000030024076fa in start_thread (arg=0x7f1e8d087700) at pthread_create.c:333
#8  0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 14 (Thread 0x7f1e8ec30700 (LWP 21615)):
#0  0x00000030014fae8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f1eee30039c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f1eee3004ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f1ef5098a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f1ef503fdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f1ef4e5c8a4 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00000030024076fa in start_thread (arg=0x7f1e8ec30700) at pthread_create.c:333
#8  0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 13 (Thread 0x7f1e8ffff700 (LWP 21596)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f1ef4e59928 in QBasicMutex::lockInternal() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f1ef4e59a1d in QMutex::lock() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f1ef2ae9ed6 in KDevelop::UrlParseLock::UrlParseLock (this=0x7f1e8fffda30, url=...) at /home/akellerm/Repos/kdesrc/kdevplatform/language/backgroundparser/urlparselock.cpp:78
#4  0x00007f1ec1e69eb0 in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c693050, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:133
#5  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c60fa40, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#6  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c68ace0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#7  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c68e030, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#8  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c60f900, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#9  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c6a63e0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#10 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c68ae00, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#11 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c693150, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#12 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c6930d0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#13 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c68ad80, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#14 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e6c618380, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#15 0x00007f1ec20fe989 in ClangParseJob::run (this=0x3aeaa00) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/clangparsejob.cpp:323
#16 0x00007f1eeb347650 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#17 0x00007f1eeb347c90 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#18 0x00007f1eeb3467e0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#19 0x00007f1eeb34628a in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#20 0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#21 0x00000030024076fa in start_thread (arg=0x7f1e8ffff700) at pthread_create.c:333
#22 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 12 (Thread 0x7f1eb0ff9700 (LWP 21595)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f1ef4e62aeb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f1eeb3442bf in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#3  0x00007f1eeb3484e8 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#4  0x00007f1eeb34346d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f1eeb346353 in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00000030024076fa in start_thread (arg=0x7f1eb0ff9700) at pthread_create.c:333
#8  0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 11 (Thread 0x7f1eb17fa700 (LWP 21594)):
#0  __lll_lock_wait_private () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:95
#1  0x000000300147fe8d in _int_free (av=0x7f1eac000020, p=0x7f1eae0da3b0, have_lock=0) at malloc.c:3963
#2  0x0000003001483abc in __GI___libc_free (mem=<optimized out>) at malloc.c:2969
#3  0x00007f1ef6d928ca in QHashData::willGrow (this=0x7f1eac00aaa0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:194
#4  0x00007f1ef2b0d954 in QHash<KDevelop::TopDUContext*, unsigned int>::insert (this=0x7f1ef33e8118 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+56>, akey=@0x7f1eb17f92c0: 0x7f1e940e6b30, avalue=@0x7f1eb17f92dc: 1) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:810
#5  0x00007f1ef2b0014e in KDevelop::DUChain::refCountUp (this=0x18e73b0, top=0x7f1e940e6b30) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/duchain.cpp:1651
#6  0x00007f1ef2b56505 in KDevelop::ReferencedTopDUContext::ReferencedTopDUContext (this=0x7f1eb17f9410, context=0x7f1e940e6b30) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/topducontext.cpp:57
#7  0x00007f1ec1e69f18 in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e54215b70, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:137
#8  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5403a8b0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#9  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e541b2f30, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#10 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e541b2e50, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#11 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5403a130, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#12 0x00007f1ec20fe989 in ClangParseJob::run (this=0x481c7e0) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/clangparsejob.cpp:323
#13 0x00007f1eeb347650 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#14 0x00007f1eeb347c90 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#15 0x00007f1eeb3467e0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#16 0x00007f1eeb34628a in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#17 0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#18 0x00000030024076fa in start_thread (arg=0x7f1eb17fa700) at pthread_create.c:333
#19 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 10 (Thread 0x7f1eb1ffb700 (LWP 21593)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f1ef4e62aeb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f1eeb3442bf in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#3  0x00007f1eeb3484e8 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#4  0x00007f1eeb34346d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f1eeb348542 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f1eeb34346d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f1eeb346353 in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00000030024076fa in start_thread (arg=0x7f1eb1ffb700) at pthread_create.c:333
#10 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 9 (Thread 0x7f1eb27fc700 (LWP 21592)):
#0  0x00000030014cb8dd in nanosleep () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f1ef4f11c8d in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f1ef4e60c84 in QThread::usleep(unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f1ef2b9280e in KDevelop::DUChainLock::lockForWrite (this=0x7f1ef33e8100 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, timeout=0) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/duchainlock.cpp:155
#4  0x00007f1ef2b92b4d in KDevelop::DUChainWriteLocker::lock (this=0x7f1eb27fb8b0) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/duchainlock.cpp:249
#5  0x00007f1ef2b92ae6 in KDevelop::DUChainWriteLocker::DUChainWriteLocker (this=0x7f1eb27fb8b0, duChainLock=0x0, timeout=0) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/duchainlock.cpp:233
#6  0x00007f1ec1e69edd in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e783e31a0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:136
#7  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e78342090, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#8  0x00007f1ec20fe989 in ClangParseJob::run (this=0x2622ca0) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/clangparsejob.cpp:323
#9  0x00007f1eeb347650 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#10 0x00007f1eeb347c90 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#11 0x00007f1eeb3467e0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#12 0x00007f1eeb34628a in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#13 0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#14 0x00000030024076fa in start_thread (arg=0x7f1eb27fc700) at pthread_create.c:333
#15 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 8 (Thread 0x7f1eb2ffd700 (LWP 21591)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f1ef4e59928 in QBasicMutex::lockInternal() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f1ef4e59a1d in QMutex::lock() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f1ef2ae9ed6 in KDevelop::UrlParseLock::UrlParseLock (this=0x7f1eb2ffbbc0, url=...) at /home/akellerm/Repos/kdesrc/kdevplatform/language/backgroundparser/urlparselock.cpp:78
#4  0x00007f1ec1e69eb0 in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5dfbebc0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:133
#5  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5dfb0480, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#6  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5de35ae0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#7  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5de357b0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#8  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5dfbe8d0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#9  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5e087e00, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#10 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5dfb0590, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#11 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5e087d80, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#12 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5dfbe990, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#13 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5de351c0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#14 0x00007f1ec20fe989 in ClangParseJob::run (this=0x3bf4da0) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/clangparsejob.cpp:323
#15 0x00007f1eeb347650 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#16 0x00007f1eeb347c90 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#17 0x00007f1eeb3467e0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#18 0x00007f1eeb34628a in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#19 0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#20 0x00000030024076fa in start_thread (arg=0x7f1eb2ffd700) at pthread_create.c:333
#21 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 7 (Thread 0x7f1eb37fe700 (LWP 21590)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f1ef4e59928 in QBasicMutex::lockInternal() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f1ef4e59a1d in QMutex::lock() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f1ef2ae9ed6 in KDevelop::UrlParseLock::UrlParseLock (this=0x7f1eb37fcd50, url=...) at /home/akellerm/Repos/kdesrc/kdevplatform/language/backgroundparser/urlparselock.cpp:78
#4  0x00007f1ec1e69eb0 in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e580cd010, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:133
#5  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e580d0000, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#6  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e58041150, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#7  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e580d00a0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#8  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e580149c0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#9  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e580bc6b0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#10 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e58014a40, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#11 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e580146c0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#12 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5803fdf0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#13 0x00007f1ec20fe989 in ClangParseJob::run (this=0x3aec3f0) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/clangparsejob.cpp:323
#14 0x00007f1eeb347650 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#15 0x00007f1eeb347c90 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#16 0x00007f1eeb3467e0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#17 0x00007f1eeb34628a in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#18 0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#19 0x00000030024076fa in start_thread (arg=0x7f1eb37fe700) at pthread_create.c:333
#20 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7f1eb3fff700 (LWP 21589)):
#0  0x00000030014cb8dd in nanosleep () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f1ef4f11c8d in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f1ef4e60c84 in QThread::usleep(unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f1ef2b9280e in KDevelop::DUChainLock::lockForWrite (this=0x7f1ef33e8100 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, timeout=0) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/duchainlock.cpp:155
#4  0x00007f1ef2b92b4d in KDevelop::DUChainWriteLocker::lock (this=0x7f1eb3ffdf50) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/duchainlock.cpp:249
#5  0x00007f1ef2b92ae6 in KDevelop::DUChainWriteLocker::DUChainWriteLocker (this=0x7f1eb3ffdf50, duChainLock=0x0, timeout=0) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/duchainlock.cpp:233
#6  0x00007f1ec1e69edd in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e800d60e0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:136
#7  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e80016290, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#8  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e80018fd0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#9  0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e800c2b40, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#10 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e800160d0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#11 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e800c2c20, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#12 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e80016170, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#13 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e80041ae0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#14 0x00007f1ec20fe989 in ClangParseJob::run (this=0x4813ef0) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/clangparsejob.cpp:323
#15 0x00007f1eeb347650 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#16 0x00007f1eeb347c90 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#17 0x00007f1eeb3467e0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#18 0x00007f1eeb34628a in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#19 0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#20 0x00000030024076fa in start_thread (arg=0x7f1eb3fff700) at pthread_create.c:333
#21 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7f1eb884f700 (LWP 21588)):
[KCrash Handler]
#6  0x0000003001435418 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#7  0x000000300143701a in __GI_abort () at abort.c:89
#8  0x000000300147772a in __libc_message (do_abort=do_abort@entry=2, fmt=fmt@entry=0x30015906b0 "*** Error in `%s': %s: 0x%s ***\n") at ../sysdeps/posix/libc_fatal.c:175
#9  0x0000003001482128 in malloc_printerr (ar_ptr=0x7f1eac000020, ptr=<optimized out>, str=0x300158d472 "corrupted double-linked list", action=3) at malloc.c:5007
#10 _int_malloc (av=av@entry=0x7f1eac000020, bytes=bytes@entry=16) at malloc.c:3728
#11 0x00000030014835a4 in __GI___libc_malloc (bytes=16) at malloc.c:2914
#12 0x00007f1ef4ac7e78 in operator new(unsigned long) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#13 0x00007f1ec1e6e094 in QList<Import>::node_construct (this=0x7f1eb884e3c0, n=0x7f1eae13e700, t=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:404
#14 0x00007f1ec1e6d733 in QList<Import>::append (this=0x7f1eb884e3c0, t=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:553
#15 0x00007f1ec1e6cc7c in QHash<void*, Import>::values (this=0x7f1eb884eb70, akey=@0x7f1eb884e360: 0x7f1e5dddfe30) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:761
#16 0x00007f1ec1e69c3e in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5dddfe30, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:117
#17 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5ddde540, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#18 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5dc91a30, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#19 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5dc129c0, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#20 0x00007f1ec1e69d3f in ClangHelpers::buildDUChain(void*, QMultiHash<void*, Import> const&, ParseSession const&, KDevelop::TopDUContext::Features, QHash<void*, KDevelop::ReferencedTopDUContext>&, ClangIndex*, std::function<bool ()> const&) (file=0x7f1e5dc18d00, imports=..., session=..., features=KDevelop::TopDUContext::AllDeclarationsContextsAndUses, includedFiles=..., index=0x1e0f700, abortFunction=...) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/duchain/clanghelpers.cpp:121
#21 0x00007f1ec20fe989 in ClangParseJob::run (this=0x3c02bd0) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/clangparsejob.cpp:323
#22 0x00007f1eeb347650 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#23 0x00007f1eeb347c90 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#24 0x00007f1eeb3467e0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#25 0x00007f1eeb34628a in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#26 0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#27 0x00000030024076fa in start_thread (arg=0x7f1eb884f700) at pthread_create.c:333
#28 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7f1ebb7b7700 (LWP 21532)):
#0  0x00000030014fae8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f1eee30039c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f1eee3004ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f1ef5098a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f1ef503fdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f1ef4e5c8a4 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f1eebcdd3c5 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7  0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00000030024076fa in start_thread (arg=0x7f1ebb7b7700) at pthread_create.c:333
#9  0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f1ec0da0700 (LWP 21520)):
#0  0x00000030014fae8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f1eee30039c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f1eee3004ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f1ef5098a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f1ef503fdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f1ef4e5c8a4 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f1ef2c68606 in KDevelop::CompletionWorkerThread::run (this=0x1b16880) at /home/akellerm/Repos/kdesrc/kdevplatform/language/codecompletion/codecompletionmodel.cpp:89
#7  0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00000030024076fa in start_thread (arg=0x7f1ec0da0700) at pthread_create.c:333
#9  0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f1ecbd79700 (LWP 21519)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f1ef4e62a26 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f1ef2b01eac in KDevelop::DUChainPrivate::CleanupThread::run (this=0x18e6230) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/duchain.cpp:282
#3  0x00007f1ef4e6184e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00000030024076fa in start_thread (arg=0x7f1ecbd79700) at pthread_create.c:333
#5  0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f1edd6318c0 (LWP 21517)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f1ef4e59928 in QBasicMutex::lockInternal() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f1ef2ac06d3 in QMutexLocker::QMutexLocker (this=0x7ffe7477d9a0, m=0x7f1ef33e8110 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+48>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qmutex.h:128
#3  0x00007f1ef2b000fe in KDevelop::DUChain::refCountUp (this=0x18e73b0, top=0x7f1e8adfded0) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/duchain.cpp:1649
#4  0x00007f1ef2b56550 in KDevelop::ReferencedTopDUContext::ReferencedTopDUContext (this=0x43a1250, rhs=...) at /home/akellerm/Repos/kdesrc/kdevplatform/language/duchain/topducontext.cpp:62
#5  0x00007f1ef2ab55db in QtMetaTypePrivate::QMetaTypeFunctionHelper<KDevelop::ReferencedTopDUContext, true>::Construct (where=0x43a1250, t=0x3beb9a0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:755
#6  0x00007f1ef505859c in QMetaType::create(int, void const*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f1ef504dd0a in QMetaMethod::invoke(QObject*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f1ef50531ad in QMetaObject::invokeMethod(QObject*, char const*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f1ef2ad33e1 in QMetaObject::invokeMethod (obj=0x38fe140, member=0x7f1ef2ced879 "updateReady", type=Qt::QueuedConnection, val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs.h:409
#10 0x00007f1ef2adf2bf in KDevelop::ParseJob::~ParseJob (this=0x3bfabc0, __in_chrg=<optimized out>) at /home/akellerm/Repos/kdesrc/kdevplatform/language/backgroundparser/parsejob.cpp:114
#11 0x00007f1ec21069c3 in ClangParseJob::~ClangParseJob (this=0x3bfabc0, __in_chrg=<optimized out>) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/clangparsejob.h:35
#12 0x00007f1ec21069fc in ClangParseJob::~ClangParseJob (this=0x3bfabc0, __in_chrg=<optimized out>) at /home/akellerm/Repos/kdesrc/kdevelop/languages/clang/clangparsejob.h:35
#13 0x00007f1eeb34d115 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#14 0x00007f1ef2addda5 in QtSharedPointer::CustomDeleter<ThreadWeaver::JobInterface, QtSharedPointer::NormalDeleter>::execute (this=0x3b93b40) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:189
#15 0x00007f1ef2adbf22 in QtSharedPointer::ExternalRefCountWithCustomDeleter<ThreadWeaver::JobInterface, QtSharedPointer::NormalDeleter>::deleter (self=0x3b93b30) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:207
#16 0x00007f1eeb3447ce in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#17 0x00007f1ef50584c9 in QMetaType::destroy(int, void*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#18 0x00007f1ef506e349 in QMetaCallEvent::~QMetaCallEvent() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#19 0x00007f1ef506e3b9 in QMetaCallEvent::~QMetaCallEvent() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#20 0x00007f1ef5044a30 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#21 0x00007f1ef5098673 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#22 0x00007f1eee3001a7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007f1eee300400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x00007f1eee3004ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#25 0x00007f1ef5098a7f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#26 0x00007f1ef503fdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#27 0x00007f1ef5b30c7d in QDialog::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#28 0x00007f1ef6dc5d74 in KDevelop::UiController::showSettingsDialog (this=0x153e3a0) at /home/akellerm/Repos/kdesrc/kdevplatform/shell/uicontroller.cpp:532
#29 0x00007f1ef6daaa3f in KDevelop::MainWindowPrivate::settingsDialog (this=0x15be7f0) at /home/akellerm/Repos/kdesrc/kdevplatform/shell/mainwindow_actions.cpp:112
#30 0x00007f1ef6eb63de in KDevelop::MainWindowPrivate::qt_static_metacall (_o=0x15be7f0, _c=QMetaObject::InvokeMetaMethod, _id=20, _a=0x7ffe7477eaf0) at /home/akellerm/Repos/kdesrc/build/kdevplatform/shell/moc_mainwindow_p.cpp:221
#31 0x00007f1ef5070fca in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#32 0x00007f1ef592c412 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#33 0x00007f1ef592e898 in QAction::activate(QAction::ActionEvent) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#34 0x00007f1ef5ab0e22 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#35 0x00007f1ef5ab70bc in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#36 0x00007f1ef5abb030 in QMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#37 0x00007f1ef5978f88 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#38 0x00007f1ef5abba83 in QMenu::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#39 0x00007f1ef593605c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#40 0x00007f1ef593bc19 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#41 0x00007f1ef504262b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#42 0x00007f1ef593ab32 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#43 0x00007f1ef59938dd in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#44 0x00007f1ef5995b3b in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#45 0x00007f1ef593605c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#46 0x00007f1ef593b516 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#47 0x00007f1ef504262b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#48 0x00007f1ef5385521 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
#49 0x00007f1ef53871e5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
#50 0x00007f1ef536af38 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
#51 0x00007f1edd12c070 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#52 0x00007f1eee3001a7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#53 0x00007f1eee300400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#54 0x00007f1eee3004ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#55 0x00007f1ef5098a7f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#56 0x00007f1ef503fdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#57 0x00007f1ef5047e8c in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#58 0x000000000040ea77 in main (argc=1, argv=0x7ffe7477fdc8) at /home/akellerm/Repos/kdesrc/kdevelop/app/main.cpp:746

Possible duplicates by query: bug 353309, bug 352723, bug 352613, bug 352572, bug 349223.

Reported using DrKonqi
Comment 1 Axel Kellermann 2016-09-01 12:28:30 UTC
Encountered another crash during parsing of cmake files:

#0  0x000000300147fbd6 in _int_free (av=0x7fffa8000020, p=<optimized out>, have_lock=0) at malloc.c:4015
#1  0x0000003001483abc in __GI___libc_free (mem=<optimized out>) at malloc.c:2969
#2  0x00007fffc0cb2a74 in cmListFileLexer_yyfree (ptr=0x7fffa962ceb0, yyscanner=0x7fffa962ceb0) at cmListFileLexer.c:2417
#3  0x00007fffc0cb29ea in cmListFileLexer_yylex_destroy (yyscanner=0x7fffa962ceb0) at cmListFileLexer.c:2359
#4  0x00007fffc0cb2ee3 in cmListFileLexerDestroy (lexer=0x7fffa962c750) at cmListFileLexer.in.l:421
#5  0x00007fffc0cb31a1 in cmListFileLexer_SetFileName (lexer=0x7fffa962c750, name=0x0, bom=0x0) at cmListFileLexer.in.l:504
#6  0x00007fffc0cb2fc7 in cmListFileLexer_Delete (lexer=0x7fffa962c750) at cmListFileLexer.in.l:454
#7  0x00007fffc0cb4382 in CMakeListsParser::readCMakeFile (_fileName=...) at /home/akellerm/Repos/kdesrc/kdevelop/projectmanagers/cmake/parser/cmakelistsparser.cpp:148
#8  0x00007fffbab1a58e in CMakeParseJob::run (this=0x3522310) at /home/akellerm/Repos/kdesrc/kdevelop/projectmanagers/cmake/duchain/cmakeparsejob.cpp:98
#9  0x00007fffec1dc650 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#10 0x00007fffec1dcc90 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#11 0x00007fffec1db7e0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#12 0x00007fffec1db28a in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#13 0x00007ffff5cf684e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#14 0x00000030024076fa in start_thread (arg=0x7fffb8cd4700) at pthread_create.c:333
#15 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
Comment 2 Axel Kellermann 2016-09-01 13:01:37 UTC
And another one:

#0  0x000000300147e4f5 in malloc_consolidate (av=av@entry=0x7fffa4000020) at malloc.c:4184
#1  0x000000300148155e in _int_malloc (av=av@entry=0x7fffa4000020, bytes=bytes@entry=19684) at malloc.c:3451
#2  0x00000030014835a4 in __GI___libc_malloc (bytes=19684) at malloc.c:2914
#3  0x00007ffff5cf7eb8 in QArrayData::allocate(unsigned long, unsigned long, unsigned long, QFlags<QArrayData::AllocationOption>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007ffff5cfa9e1 in QByteArray::resize(int) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007ffff5e00a29 in QIODevice::readAll() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007ffff3975690 in KDevelop::ParseJob::readContents (this=0x34641d0) at /home/akellerm/Repos/kdesrc/kdevplatform/language/backgroundparser/parsejob.cpp:316
#7  0x00007fffbab19fd0 in CMakeParseJob::run (this=0x34641d0) at /home/akellerm/Repos/kdesrc/kdevelop/projectmanagers/cmake/duchain/cmakeparsejob.cpp:59
#8  0x00007fffec1dc650 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#9  0x00007fffec1dcc90 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#10 0x00007fffec1db7e0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#11 0x00007fffec1db28a in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#12 0x00007ffff5cf684e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00000030024076fa in start_thread (arg=0x7fffaffff700) at pthread_create.c:333
#14 0x0000003001506b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
Comment 3 Axel Kellermann 2016-09-01 13:03:33 UTC
I'd be happy to help with debugging, but I need some pointers where to start, and what to look for.
Comment 4 Milian Wolff 2016-09-07 00:36:57 UTC
Can you compile KDevplatform + KDevelop with ASAN and see if you spot anything? Or try `valgrind --smc-check=all-non-file kdevelop -s ...`.

Or are you maybe running out of memory?
Comment 5 Axel Kellermann 2016-09-08 19:29:54 UTC
I compiled kdevelop and kdevplatform with ASAN and tested again on two platforms:
1. A laptop with only 4GB of RAM, where memory actually is kind of an issue. kdevelop takes up ~3.5GB of RAM
    and the system starts to heavyly swap out pages. But the limits of the swap partition are never reached, so
    parsing gets very slow, but never runs out of memory.
2. A PC with 16GB of RAM, where memory is definitely no issue.

On both machines ASAN reports the same heap-buffer-overflow error during parsing of cmake files (attached as asan_readCMakeFile_20160908.txt).
Comment 6 Axel Kellermann 2016-09-08 19:31:16 UTC
Created attachment 100989 [details]
ASAN output of heap-buffer-overflow error during parsing of CMake file
Comment 7 Kevin Funk 2016-09-08 20:30:14 UTC
Could that be related to bug 363269? Could you check the CMake file KDevelop is parsing (see debug output). Is it a binary file?
Comment 8 Axel Kellermann 2016-09-08 21:23:55 UTC
I found the problem, and it's actually similar, but not the same as bug 363269. The code base being parsed contains a subfolder with example text in a couple of different asian languages, all stored as .txt files in UTF16LE. The cmake parser seems to not just read CMakeLists.txt and *.cmake, but also generally all files with the extension .txt. Apparently the encoding of the example files is handled correctly, but then the wide characters are given to the lexer that expects chars, hence the one byte buffer overflow reported (just my guess, didn't have a look at all the code involved).

If I delete all the UTF16 files, the whole code base is processed successfully.

So I guess the problem is kind of a duplicate of 363269, but more specific. The cmake parser seems generally to greedy in selecting the files it processes. Could that be narrowed down to only CMakeLists.txt and *.cmake?

Feel free to close this one if you think it's covered by 363269.
Comment 9 Kevin Funk 2016-09-08 21:36:00 UTC
Thanks a ton for the analysis, Axel.

And yes, those two bug reports have the same root cause => I'll merge them.

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