Summary: | Hang when opeing/parsing file | ||
---|---|---|---|
Product: | [Developer tools] kdevplatform | Reporter: | Francis Herne <mail> |
Component: | language | Assignee: | kdevelop-bugs-null |
Status: | RESOLVED WORKSFORME | ||
Severity: | crash | CC: | aspotashev |
Priority: | VHI | ||
Version: | git master | ||
Target Milestone: | 5.1.0 | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Francis Herne
2017-02-03 19:20:19 UTC
Continued, because the comment was too long... Thread 11 (Thread 0x7f67af7fe700 (LWP 29320)): #0 0x00007f6806c38ffd in nanosleep () at /usr/lib/libc.so.6 #1 0x00007f6807a9e65d in () at /usr/lib/libQt5Core.so.5 #2 0x00007f680786ea94 in QThread::usleep(unsigned long) () at /usr/lib/libQt5Core.so.5 #3 0x00007f6804c6fcd2 in KDevelop::DUChainPrivate::loadChain(unsigned int, QSet<unsigned int>&) (this=0x7f6805540180 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder>, index=1473, loaded=...) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:568 chain = 0x7f67af7fcc20 l = {val = 140084742717824} __PRETTY_FUNCTION__ = "void KDevelop::DUChainPrivate::loadChain(uint, QSet<unsigned int>&)" #4 0x00007f6804c6ff3f in KDevelop::DUChainPrivate::loadChain(unsigned int, QSet<unsigned int>&) (this=0x7f6805540180 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder>, index=1474, loaded=...) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:587 import = @0x7f679c40c6c8: {position = {line = -1, column = -1}, m_declaration = {{m_indirectData = {identifier = {<KDevelop::ReferenceCountManager> = {<No data fields>}, index = 65538}, additionalIdentity = 0}, m_directData = {m_topContext = 65538, m_declarationIndex = 0}}, m_isDirect = false, m_specialization = {<KDevelop::ReferenceCountManager> = {<No data fields>}, m_index = 0}}, m_context = {m_topContext = 1473, m_contextIndex = 0}} _container_ = {c = {d = 0x7f679c40c6b0}, i = {i = 0x7f679c40c6c8}, e = {i = 0x7f679c40c6e8}, control = 1} ---Type <return> to continue, or q <return> to quit--- chain = 0x7f679c40a910 l = {val = 140084742717824} __PRETTY_FUNCTION__ = "void KDevelop::DUChainPrivate::loadChain(uint, QSet<unsigned int>&)" #5 0x00007f6804c69b04 in KDevelop::DUChain::loadChain(unsigned int) (this=0x1111750, index=1474) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:1312 loaded = {q_hash = {{d = 0x7f679c3fefe0, e = 0x7f679c3fefe0}}} #6 0x00007f6804cbdaa0 in KDevelop::DUChain::chainForIndex(unsigned int) (this=0x1111750, index=1474) at /home/flh/projects/kdevplatform/language/duchain/duchain.h:186 #7 0x00007f6804cbdbdd in KDevelop::IndexedTopDUContext::data() const (this=0x7f67af7fce40) at /home/flh/projects/kdevplatform/language/duchain/indexedtopducontext.cpp:49 #8 0x00007f6804d11009 in KDevelop::ParsingEnvironmentFile::topContext() const (this=0x7f679c408790) at /home/flh/projects/kdevplatform/language/duchain/parsingenvironment.cpp:140 #9 0x00007f67c21c584d in Python::ParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=0x66a7310) at /home/flh/projects/kdev-python/pythonparsejob.cpp:128 file = @0x7f679c4083f0: {d = 0x7f679c408790} _container_ = {c = {<QListSpecialMethods<QExplicitlySharedDataPointer<KDevelop::ParsingEnvironmentFile> >> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f679c4083e0}, d = 0x7f679c4083e0}}, i = {i = 0x7f679c4083f0}, e = {i = 0x7f679c4083f8}, control = 1} lock = {m_lock = 0x7f68055401a0 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, m_locked = true, m_timeout = 0} langString = {m_index = 916876} __PRETTY_FUNCTION__ = "virtual void Python::ParseJob::run(ThreadWeaver::JobPointer, ThreadWeaver::Thread*)" parselock = {q_val = 28771441} urlLock = {m_url = {m_index = 132511}} toUpdate = {m_topContext = 0x0} parserResults = {first = {value = 0x0, d = 0x7f67af7fddb0}, second = 224} editor = {value = 0x7f67af7fdd00, d = 0x6681ce0} lock = {m_lock = 0x7f67a40023d0, m_locked = 208, m_timeout = 32615} #10 0x00007f6803d4a586 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #11 0x00007f6803d4ab88 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #12 0x00007f6803d49a9a in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #13 0x00007f6803d49140 in ThreadWeaver::Thread::run() () at /usr/lib/libKF5ThreadWeaver.so.5 #14 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #15 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #16 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 10 (Thread 0x7f67affff700 (LWP 29319)): #0 0x00007f6806c38ffd in nanosleep () at /usr/lib/libc.so.6 #1 0x00007f6807a9e65d in () at /usr/lib/libQt5Core.so.5 #2 0x00007f680786ea94 in QThread::usleep(unsigned long) () at /usr/lib/libQt5Core.so.5 #3 0x00007f6804cf7e37 in KDevelop::DUChainLock::lockForWrite(unsigned int) (this=0x7f68055401a0 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, timeout=0) at /home/flh/projects/kdevplatform/language/duchain/duchainlock.cpp:155 t = {t1 = -9223372036854775808, t2 = -9223372036854775808} #4 0x00007f6804cf813f in KDevelop::DUChainWriteLocker::lock() (this=0x7f67afffe930) at /home/flh/projects/kdevplatform/language/duchain/duchainlock.cpp:249 l = false #5 0x00007f6804cf80d8 in KDevelop::DUChainWriteLocker::DUChainWriteLocker(KDevelop::DUChainLock*, unsigned int) (this=0x7f67afffe930, duChainLock=0x0, timeout=0) at /home/flh/projects/kdevplatform/language/duchain/duchainlock.cpp:233 #6 0x00007f67c7b92594 in ClangParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=0x6721720) at /home/flh/projects/kdevelop/languages/clang/clangparsejob.cpp:257 session = {d = {d = 0x7f67a4729110}} lock = {m_lock = 0x7f68055401a0 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, m_locked = false, m_timeout = 0} ctx = 0x5fba500 parseLock = {q_val = 23419217} __PRETTY_FUNCTION__ = "virtual void ClangParseJob::run(ThreadWeaver::JobPointer, ThreadWeaver::Thread*)" session = {d = {d = 0x6568991}} imports = {<QHash<void*, Import>> = {{d = 0xdb4b80, e = 0xdb4b80}}, <No data fields>} includedFiles = {{d = 0x6568991, e = 0x6568991}} context = {m_topContext = 0x7f6807af7230 <QListData::shared_null+16>} #7 0x00007f6803d4a586 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #8 0x00007f6803d4ab88 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #9 0x00007f6803d49a9a in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #10 0x00007f6803d49140 in ThreadWeaver::Thread::run() () at /usr/lib/libKF5ThreadWeaver.so.5 ---Type <return> to continue, or q <return> to quit--- #11 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #12 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #13 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 9 (Thread 0x7f67bafe1700 (LWP 29318)): #0 0x00007f6806c38ffd in nanosleep () at /usr/lib/libc.so.6 #1 0x00007f6807a9e65d in () at /usr/lib/libQt5Core.so.5 #2 0x00007f680786ea94 in QThread::usleep(unsigned long) () at /usr/lib/libQt5Core.so.5 #3 0x00007f6804c6fcd2 in KDevelop::DUChainPrivate::loadChain(unsigned int, QSet<unsigned int>&) (this=0x7f6805540180 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder>, index=1473, loaded=...) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:568 chain = 0x7f67bafdfc20 l = {val = 140084742717824} __PRETTY_FUNCTION__ = "void KDevelop::DUChainPrivate::loadChain(uint, QSet<unsigned int>&)" #4 0x00007f6804c6ff3f in KDevelop::DUChainPrivate::loadChain(unsigned int, QSet<unsigned int>&) (this=0x7f6805540180 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder>, index=1488, loaded=...) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:587 import = @0x7f67b09c3f58: {position = {line = -1, column = -1}, m_declaration = {{m_indirectData = {identifier = {<KDevelop::ReferenceCountManager> = {<No data fields>}, index = 65538}, additionalIdentity = 0}, m_directData = {m_topContext = 65538, m_declarationIndex = 0}}, m_isDirect = false, m_specialization = {<KDevelop::ReferenceCountManager> = {<No data fields>}, m_index = 0}}, m_context = {m_topContext = 1473, m_contextIndex = 0}} _container_ = {c = {d = 0x7f67b09c3f40}, i = {i = 0x7f67b09c3f58}, e = {i = 0x7f67b09c3f98}, control = 1} chain = 0x7f67b09c4750 l = {val = 140084742717824} __PRETTY_FUNCTION__ = "void KDevelop::DUChainPrivate::loadChain(uint, QSet<unsigned int>&)" #5 0x00007f6804c69b04 in KDevelop::DUChain::loadChain(unsigned int) (this=0x1111750, index=1488) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:1312 loaded = {q_hash = {{d = 0x7f67b09c3890, e = 0x7f67b09c3890}}} #6 0x00007f6804cbdaa0 in KDevelop::DUChain::chainForIndex(unsigned int) (this=0x1111750, index=1488) at /home/flh/projects/kdevplatform/language/duchain/duchain.h:186 #7 0x00007f6804cbdbdd in KDevelop::IndexedTopDUContext::data() const (this=0x7f67bafdfe40) at /home/flh/projects/kdevplatform/language/duchain/indexedtopducontext.cpp:49 #8 0x00007f6804d11009 in KDevelop::ParsingEnvironmentFile::topContext() const (this=0x7f67b09c49e0) at /home/flh/projects/kdevplatform/language/duchain/parsingenvironment.cpp:140 #9 0x00007f67c21c584d in Python::ParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=0x66ce260) at /home/flh/projects/kdev-python/pythonparsejob.cpp:128 file = @0x7f67b09c1e30: {d = 0x7f67b09c49e0} _container_ = {c = {<QListSpecialMethods<QExplicitlySharedDataPointer<KDevelop::ParsingEnvironmentFile> >> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f67b09c1e20}, d = 0x7f67b09c1e20}}, i = {i = 0x7f67b09c1e30}, e = {i = 0x7f67b09c1e38}, control = 1} lock = {m_lock = 0x7f68055401a0 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, m_locked = true, m_timeout = 0} langString = {m_index = 916876} __PRETTY_FUNCTION__ = "virtual void Python::ParseJob::run(ThreadWeaver::JobPointer, ThreadWeaver::Thread*)" parselock = {q_val = 28771441} urlLock = {m_url = {m_index = 132429}} toUpdate = {m_topContext = 0x1} parserResults = {first = {value = 0xdaf230, d = 0x7f6803d4714c <ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool)+604>}, second = 176} editor = {value = 0x7f67bafe0d00, d = 0x4eec600} lock = {m_lock = 0xdaf230, m_locked = false, m_timeout = 32615} #10 0x00007f6803d4a586 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #11 0x00007f6803d4ab88 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #12 0x00007f6803d49a9a in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #13 0x00007f6803d49140 in ThreadWeaver::Thread::run() () at /usr/lib/libKF5ThreadWeaver.so.5 #14 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #15 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #16 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 8 (Thread 0x7f67ba7e0700 (LWP 29317)): #0 0x00007f6806c38ffd in nanosleep () at /usr/lib/libc.so.6 #1 0x00007f6807a9e65d in () at /usr/lib/libQt5Core.so.5 #2 0x00007f680786ea94 in QThread::usleep(unsigned long) () at /usr/lib/libQt5Core.so.5 #3 0x00007f6804c6fcd2 in KDevelop::DUChainPrivate::loadChain(unsigned int, QSet<unsigned int>&) (this=0x7f6805540180 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder>, index=1474, loaded=...) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:568 ---Type <return> to continue, or q <return> to quit--- chain = 0x7f67ba7deaf0 l = {val = 140084742717824} __PRETTY_FUNCTION__ = "void KDevelop::DUChainPrivate::loadChain(uint, QSet<unsigned int>&)" #4 0x00007f6804c6ff3f in KDevelop::DUChainPrivate::loadChain(unsigned int, QSet<unsigned int>&) (this=0x7f6805540180 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder>, index=1473, loaded=...) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:587 import = @0x7f67a8ac8c18: {position = {line = -1, column = -1}, m_declaration = {{m_indirectData = {identifier = {<KDevelop::ReferenceCountManager> = {<No data fields>}, index = 65538}, additionalIdentity = 0}, m_directData = {m_topContext = 65538, m_declarationIndex = 0}}, m_isDirect = false, m_specialization = {<KDevelop::ReferenceCountManager> = {<No data fields>}, m_index = 0}}, m_context = {m_topContext = 1474, m_contextIndex = 0}} _container_ = {c = {d = 0x7f67a8ac8c00}, i = {i = 0x7f67a8ac8c18}, e = {i = 0x7f67a8ac8c38}, control = 1} chain = 0x7f67a8b0ed00 l = {val = 140084742717824} __PRETTY_FUNCTION__ = "void KDevelop::DUChainPrivate::loadChain(uint, QSet<unsigned int>&)" #5 0x00007f6804c6ff3f in KDevelop::DUChainPrivate::loadChain(unsigned int, QSet<unsigned int>&) (this=0x7f6805540180 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder>, index=1585, loaded=...) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:587 import = @0x7f67a8aced28: {position = {line = -1, column = -1}, m_declaration = {{m_indirectData = {identifier = {<KDevelop::ReferenceCountManager> = {<No data fields>}, index = 65538}, additionalIdentity = 0}, m_directData = {m_topContext = 65538, m_declarationIndex = 0}}, m_isDirect = false, m_specialization = {<KDevelop::ReferenceCountManager> = {<No data fields>}, m_index = 0}}, m_context = {m_topContext = 1473, m_contextIndex = 0}} _container_ = {c = {d = 0x7f67a8aced10}, i = {i = 0x7f67a8aced28}, e = {i = 0x7f67a8aced68}, control = 1} chain = 0x7f67a8acd9e0 l = {val = 140084742717824} __PRETTY_FUNCTION__ = "void KDevelop::DUChainPrivate::loadChain(uint, QSet<unsigned int>&)" #6 0x00007f6804c69b04 in KDevelop::DUChain::loadChain(unsigned int) (this=0x1111750, index=1585) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:1312 loaded = {q_hash = {{d = 0x7f67a8acd220, e = 0x7f67a8acd220}}} #7 0x00007f6804cbdaa0 in KDevelop::DUChain::chainForIndex(unsigned int) (this=0x1111750, index=1585) at /home/flh/projects/kdevplatform/language/duchain/duchain.h:186 #8 0x00007f6804cbdbdd in KDevelop::IndexedTopDUContext::data() const (this=0x7f67ba7dee40) at /home/flh/projects/kdevplatform/language/duchain/indexedtopducontext.cpp:49 #9 0x00007f6804d11009 in KDevelop::ParsingEnvironmentFile::topContext() const (this=0x7f67a8acf820) at /home/flh/projects/kdevplatform/language/duchain/parsingenvironment.cpp:140 #10 0x00007f67c21c584d in Python::ParseJob::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) (this=0x66507f0) at /home/flh/projects/kdev-python/pythonparsejob.cpp:128 file = @0x7f67a8ace9c0: {d = 0x7f67a8acf820} _container_ = {c = {<QListSpecialMethods<QExplicitlySharedDataPointer<KDevelop::ParsingEnvironmentFile> >> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f67a8ace9b0}, d = 0x7f67a8ace9b0}}, i = {i = 0x7f67a8ace9c0}, e = {i = 0x7f67a8ace9c8}, control = 1} lock = {m_lock = 0x7f68055401a0 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, m_locked = true, m_timeout = 0} langString = {m_index = 916876} __PRETTY_FUNCTION__ = "virtual void Python::ParseJob::run(ThreadWeaver::JobPointer, ThreadWeaver::Thread*)" parselock = {q_val = 28771441} urlLock = {m_url = {m_index = 132590}} toUpdate = {m_topContext = 0x1} parserResults = {first = {value = 0x7f67a8ac8b30, d = 0x7f67a8ac8b30}, second = 48} editor = {value = 0x7f67ba7dfd00, d = 0x50396a0} lock = {m_lock = 0xdaf230, m_locked = false, m_timeout = 0} #11 0x00007f6803d4a586 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #12 0x00007f6803d4ab88 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #13 0x00007f6803d49a9a in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF5ThreadWeaver.so.5 #14 0x00007f6803d49140 in ThreadWeaver::Thread::run() () at /usr/lib/libKF5ThreadWeaver.so.5 #15 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #16 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #17 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 7 (Thread 0x7f67c1c93700 (LWP 29175)): #0 0x00007f6806c6048d in poll () at /usr/lib/libc.so.6 #1 0x00007f67fb447786 in () at /usr/lib/libglib-2.0.so.0 #2 0x00007f67fb44789c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0 #3 0x00007f6807a9f44f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 #4 0x00007f6807a48c9a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 ---Type <return> to continue, or q <return> to quit--- #5 0x00007f680786aa73 in QThread::exec() () at /usr/lib/libQt5Core.so.5 #6 0x00007f6804dc50a1 in KDevelop::CompletionWorkerThread::run() (this=0x1af0080) at /home/flh/projects/kdevplatform/language/codecompletion/codecompletionmodel.cpp:89 #7 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #8 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #9 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 6 (Thread 0x7f67c2c49700 (LWP 29167)): #0 0x00007f6806c6048d in poll () at /usr/lib/libc.so.6 #1 0x00007f67fb447786 in () at /usr/lib/libglib-2.0.so.0 #2 0x00007f67fb44789c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0 #3 0x00007f6807a9f44f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 #4 0x00007f6807a48c9a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 #5 0x00007f680786aa73 in QThread::exec() () at /usr/lib/libQt5Core.so.5 #6 0x00007f6804dc50a1 in KDevelop::CompletionWorkerThread::run() (this=0x165a6c0) at /home/flh/projects/kdevplatform/language/codecompletion/codecompletionmodel.cpp:89 #7 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #8 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #9 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 5 (Thread 0x7f67d1e66700 (LWP 29166)): #0 0x00007f6806c6048d in poll () at /usr/lib/libc.so.6 #1 0x00007f67fb447786 in () at /usr/lib/libglib-2.0.so.0 #2 0x00007f67fb44789c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0 #3 0x00007f6807a9f44f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 #4 0x00007f6807a48c9a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 #5 0x00007f680786aa73 in QThread::exec() () at /usr/lib/libQt5Core.so.5 #6 0x00007f6804dc50a1 in KDevelop::CompletionWorkerThread::run() (this=0x11b4c50) at /home/flh/projects/kdevplatform/language/codecompletion/codecompletionmodel.cpp:89 #7 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #8 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #9 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 4 (Thread 0x7f67d96ea700 (LWP 29165)): #0 0x00007f67ff4694b8 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0 #1 0x00007f68078704c6 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5 #2 0x00007f6804c6df0b in KDevelop::DUChainPrivate::CleanupThread::run() (this=0x110a950) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:282 lock = {val = 17869169} s = 174 #3 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #4 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #5 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 3 (Thread 0x7f67ea885700 (LWP 29164)): #0 0x00007f6806c6048d in poll () at /usr/lib/libc.so.6 #1 0x00007f67fb447786 in () at /usr/lib/libglib-2.0.so.0 #2 0x00007f67fb44789c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0 #3 0x00007f6807a9f44f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 #4 0x00007f6807a48c9a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 #5 0x00007f680786aa73 in QThread::exec() () at /usr/lib/libQt5Core.so.5 #6 0x00007f680a819125 in () at /usr/lib/libQt5DBus.so.5 #7 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #8 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #9 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 2 (Thread 0x7f67ec265700 (LWP 29163)): #0 0x00007f6806c6048d in poll () at /usr/lib/libc.so.6 #1 0x00007f67fa2858e0 in () at /usr/lib/libxcb.so.1 #2 0x00007f67fa287679 in xcb_wait_for_event () at /usr/lib/libxcb.so.1 #3 0x00007f67ee5b8239 in () at /usr/lib/libQt5XcbQpa.so.5 ---Type <return> to continue, or q <return> to quit--- #4 0x00007f680786f6d8 in () at /usr/lib/libQt5Core.so.5 #5 0x00007f67ff463454 in start_thread () at /usr/lib/libpthread.so.0 #6 0x00007f6806c697df in clone () at /usr/lib/libc.so.6 Thread 1 (Thread 0x7f680e7b5800 (LWP 29162)): #0 0x00007f6806c38ffd in nanosleep () at /usr/lib/libc.so.6 #1 0x00007f6807a9e65d in () at /usr/lib/libQt5Core.so.5 #2 0x00007f680786ea94 in QThread::usleep(unsigned long) () at /usr/lib/libQt5Core.so.5 #3 0x00007f6804cf7e37 in KDevelop::DUChainLock::lockForWrite(unsigned int) (this=0x7f68055401a0 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, timeout=0) at /home/flh/projects/kdevplatform/language/duchain/duchainlock.cpp:155 t = {t1 = -9223372036854775808, t2 = -9223372036854775808} #4 0x00007f6804cf813f in KDevelop::DUChainWriteLocker::lock() (this=0x7ffdfdba5c50) at /home/flh/projects/kdevplatform/language/duchain/duchainlock.cpp:249 l = false #5 0x00007f6804cf80d8 in KDevelop::DUChainWriteLocker::DUChainWriteLocker(KDevelop::DUChainLock*, unsigned int) (this=0x7ffdfdba5c50, duChainLock=0x7f68055401a0 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, timeout=0) at /home/flh/projects/kdevplatform/language/duchain/duchainlock.cpp:233 #6 0x00007f6804c6b0be in KDevelop::DUChain::documentLoadedPrepare(KDevelop::IDocument*) (this=0x1111750, doc=0x2c3a830) at /home/flh/projects/kdevplatform/language/duchain/duchain.cpp:1504 url = {m_index = 9399892} lock = {m_lock = 0x7f68055401a0 <KDevelop::(anonymous namespace)::Q_QGS_sdDUChainPrivate::innerFunction()::holder+32>, m_locked = false, m_timeout = 0} l = {val = 37522304} standardContext = 0x8 chains = {<QListSpecialMethods<KDevelop::TopDUContext*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x4c}, d = 0x4c}} languages = {<QListSpecialMethods<KDevelop::ILanguageSupport*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7ffdfdba5cf0}, d = 0x7ffdfdba5cf0}} __PRETTY_FUNCTION__ = "void KDevelop::DUChain::documentLoadedPrepare(KDevelop::IDocument*)" #7 0x00007f6804c8dc70 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<KDevelop::IDocument*>, void, void (KDevelop::DUChain::*)(KDevelop::IDocument*)>::call(void (KDevelop::DUChain::*)(KDevelop::IDocument*), KDevelop::DUChain*, void**) (f= (void (KDevelop::DUChain::*)(KDevelop::DUChain * const, KDevelop::IDocument *)) 0x7f6804c6b01c <KDevelop::DUChain::documentLoadedPrepare(KDevelop::IDocument*)>, o=0x1111750, arg=0x7ffdfdba6020) at /usr/include/qt/QtCore/qobjectdefs_impl.h:143 #8 0x00007f6804c8caf4 in QtPrivate::FunctionPointer<void (KDevelop::DUChain::*)(KDevelop::IDocument*)>::call<QtPrivate::List<KDevelop::IDocument*>, void>(void (KDevelop::DUChain::*)(KDevelop::IDocument*), KDevelop::DUChain*, void**) (f= (void (KDevelop::DUChain::*)(KDevelop::DUChain * const, KDevelop::IDocument *)) 0x7f6804c6b01c <KDevelop::DUChain::documentLoadedPrepare(KDevelop::IDocument*)>, o=0x1111750, arg=0x7ffdfdba6020) at /usr/include/qt/QtCore/qobjectdefs_impl.h:162 #9 0x00007f6804c89915 in QtPrivate::QSlotObject<void (KDevelop::DUChain::*)(KDevelop::IDocument*), QtPrivate::List<KDevelop::IDocument*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x1110db0, r=0x1111750, a=0x7ffdfdba6020, ret=0x0) at /usr/include/qt/QtCore/qobject_impl.h:120 #10 0x00007f6807a764be in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5 #11 0x00007f680ca85d2f in KDevelop::IDocumentController::documentLoadedPrepare(KDevelop::IDocument*) (this=0xdd28d0, _t1=0x2c3a830) at /home/flh/projects/kdevplatform/build/interfaces/KDevPlatformInterfaces_automoc.dir/moc_idocumentcontr_BKHINBC3JP6LAY.cpp:567 _a = {0x0, 0x7ffdfdba6010} #12 0x00007f680ca77cc0 in KDevelop::IDocument::notifyLoaded() (this=0x2c3a830) at /home/flh/projects/kdevplatform/interfaces/idocument.cpp:130 #13 0x00007f680e34ffae in KDevelop::TextDocument::slotDocumentLoaded() (this=0x2c3a810) at /home/flh/projects/kdevplatform/shell/textdocument.cpp:777 #14 0x00007f680e308e37 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (KDevelop::TextDocument::*)()>::call(void (KDevelop::TextDocument::*)(), KDevelop::TextDocument*, void**) (f=(void (KDevelop::TextDocument::*)(KDevelop::TextDocument * const)) 0x7f680e34ff76 <KDevelop::TextDocument::slotDocumentLoaded()>, o=0x2c3a810, arg=0x7ffdfdba6250) at /usr/include/qt/QtCore/qobjectdefs_impl.h:143 #15 0x00007f680e3089ab in QtPrivate::FunctionPointer<void (KDevelop::TextDocument::*)()>::call<QtPrivate::List<>, void>(void (KDevelop::TextDocument::*)(), KDevelop::TextDocument*, void**) (f=(void (KDevelop::TextDocument::*)(KDevelop::TextDocument * const)) 0x7f680e34ff76 <KDevelop::TextDocument::slotDocumentLoaded()>, o=0x2c3a810, arg=0x7ffdfdba6250) at /usr/include/qt/QtCore/qobjectdefs_impl.h:162 #16 0x00007f680e308087 in QtPrivate::QSlotObject<void (KDevelop::TextDocument::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x2145830, r=0x2c3a810, a=0x7ffdfdba6250, ret=0x0) at /usr/include/qt/QtCore/qobject_impl.h:120 #17 0x00007f6807a764be in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5 #18 0x00007f680c74b712 in KTextEditor::Document::textChanged(KTextEditor::Document*) (this=this@entry=0x21acb10, _t1=<optimized out>, _t1@entry=0x21acb10) at /home/flh/ktexteditor/src/build/src/KF5TextEditor_automoc.dir/moc_document_G7ZZNPEZ2BAWZM.cpp:577 _a = {0x0, 0x7ffdfdba6248} #19 0x00007f680c5b7c13 in KTextEditor::DocumentPrivate::openFile() (this=0x21acb10) at /home/flh/ktexteditor/src/ktexteditor-5.30.0/src/document/katedocument.cpp:2259 currentEncoding = {static null = {<No data fields>}, d = 0x2146fd0} ---Type <return> to continue, or q <return> to quit--- mimeType = {static null = {<No data fields>}, d = 0x2222700} pos = <optimized out> success = true #20 0x00007f680c24e221 in () at /usr/lib/libKF5Parts.so.5 #21 0x00007f680c24f14c in KParts::ReadOnlyPart::openUrl(QUrl const&) () at /usr/lib/libKF5Parts.so.5 #22 0x00007f680c5a41e9 in KTextEditor::DocumentPrivate::openUrl(QUrl const&) (this=0x21acb10, url=...) at /home/flh/ktexteditor/src/ktexteditor-5.30.0/src/document/katedocument.cpp:2625 res = <optimized out> #23 0x00007f680e34cfbc in KDevelop::TextDocument::createViewWidget(QWidget*) (this=0x2c3a810, parent=0x2a30e00) at /home/flh/projects/kdevplatform/shell/textdocument.cpp:310 view = 0x0 #24 0x00007f680e34e90c in KDevelop::TextView::createWidget(QWidget*) (this=0x2150630, parent=0x2a30e00) at /home/flh/projects/kdevplatform/shell/textdocument.cpp:594 textDocument = 0x2c3a810 widget = 0x7ffdfdba67d0 #25 0x00007f680d3e1a86 in Sublime::View::widget(QWidget*) (this=0x2150630, parent=0x2a30e00) at /home/flh/projects/kdevplatform/sublime/view.cpp:76 #26 0x00007f680d3d9116 in Sublime::MainWindowPrivate::ViewCreator::operator()(Sublime::AreaIndex*) (this=0x7ffdfdba6b80, index=0xae9930) at /home/flh/projects/kdevplatform/sublime/mainwindow_p.cpp:388 widget = 0x1d86ea0 view = 0x2150630 _container_ = {c = {<QListSpecialMethods<Sublime::View*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x17bff60}, d = 0x17bff60}}, i = {i = 0x17bff90}, e = {i = 0x17bff98}, control = 1} container = 0x2a30e00 position = 4 hadActiveView = true activeView = 0x163c400 splitter = 0xaa07b0 __PRETTY_FUNCTION__ = "Sublime::Area::WalkerMode Sublime::MainWindowPrivate::ViewCreator::operator()(Sublime::AreaIndex*)" #27 0x00007f680d3ddb31 in Sublime::Area::walkViewsInternal<Sublime::MainWindowPrivate::ViewCreator>(Sublime::MainWindowPrivate::ViewCreator&, Sublime::AreaIndex*) (this=0xae9890, op=..., index=0xae9930) at /home/flh/projects/kdevplatform/sublime/areawalkers.h:32 mode = (unknown: 32616) #28 0x00007f680d3dc8ed in Sublime::Area::walkViews<Sublime::MainWindowPrivate::ViewCreator>(Sublime::MainWindowPrivate::ViewCreator&, Sublime::AreaIndex*) (this=0xae9890, op=..., index=0xae9930) at /home/flh/projects/kdevplatform/sublime/areawalkers.h:48 #29 0x00007f680d3d9e6a in Sublime::MainWindowPrivate::viewAdded(Sublime::AreaIndex*, Sublime::View*) (this=0xa0e560, index=0xae9930, view=0x2150630) at /home/flh/projects/kdevplatform/sublime/mainwindow_p.cpp:559 viewCreator = {d = 0xa0e560, topViews = {q_hash = {{d = 0x2386c80, e = 0x2386c80}}}} #30 0x00007f680d3d64ea in QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<Sublime::AreaIndex*, Sublime::View*>, void, void (Sublime::MainWindowPrivate::*)(Sublime::AreaIndex*, Sublime::View*)>::call(void (Sublime::MainWindowPrivate::*)(Sublime::AreaIndex*, Sublime::View*), Sublime::MainWindowPrivate*, void**) (f= (void (Sublime::MainWindowPrivate::*)(Sublime::MainWindowPrivate * const, Sublime::AreaIndex *, Sublime::View *)) 0x7f680d3d9c82 <Sublime::MainWindowPrivate::viewAdded(Sublime::AreaIndex*, Sublime::View*)>, o=0xa0e560, arg=0x7ffdfdba6da0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:143 #31 0x00007f680d3d6091 in QtPrivate::FunctionPointer<void (Sublime::MainWindowPrivate::*)(Sublime::AreaIndex*, Sublime::View*)>::call<QtPrivate::List<Sublime::AreaIndex*, Sublime::View*>, void>(void (Sublime::MainWindowPrivate::*)(Sublime::AreaIndex*, Sublime::View*), Sublime::MainWindowPrivate*, void**) (f= (void (Sublime::MainWindowPrivate::*)(Sublime::MainWindowPrivate * const, Sublime::AreaIndex *, Sublime::View *)) 0x7f680d3d9c82 <Sublime::MainWindowPrivate::viewAdded(Sublime::AreaIndex*, Sublime::View*)>, o=0xa0e560, arg=0x7ffdfdba6da0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:162 #32 0x00007f680d3d565d in QtPrivate::QSlotObject<void (Sublime::MainWindowPrivate::*)(Sublime::AreaIndex*, Sublime::View*), QtPrivate::List<Sublime::AreaIndex*, Sublime::View*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x258dbb0, r=0xa0e560, a=0x7ffdfdba6da0, ret=0x0) at /usr/include/qt/QtCore/qobject_impl.h:120 #33 0x00007f6807a764be in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5 #34 0x00007f680d3f13b1 in Sublime::Area::viewAdded(Sublime::AreaIndex*, Sublime::View*) (this=0xae9890, _t1=0xae9930, _t2=0x2150630) at /home/flh/projects/kdevplatform/build/sublime/KDevPlatformSublime_automoc.dir/moc_area_PMAGMMPI7SVUYA.cpp:278 _a = {0x0, 0x7ffdfdba6d90, 0x7ffdfdba6d88} #35 0x00007f680d3b2e4d in Sublime::Area::addView(Sublime::View*, Sublime::AreaIndex*, Sublime::View*) (this=0xae9890, view=0x2150630, index=0xae9930, after=0x0) at /home/flh/projects/kdevplatform/sublime/area.cpp:176 __PRETTY_FUNCTION__ = "void Sublime::Area::addView(Sublime::View*, Sublime::AreaIndex*, Sublime::View*)" #36 0x00007f680d3b2ec8 in Sublime::Area::addView(Sublime::View*, Sublime::View*) (this=0xae9890, view=0x2150630, after=0x163c400) at /home/flh/projects/kdevplatform/sublime/area.cpp:188 index = 0xae9930 #37 0x00007f680e35e3a7 in KDevelop::DocumentControllerPrivate::openDocumentInternal(KDevelop::IDocument*, KTextEditor::Range const&, QFlags<KDevelop::IDocumentController::DocumentActivation>, KDevelop::IDocument*) (this=0xdc5e10, doc=0x2c3a830, range=..., activationParams=..., buddy=0x0) at /home/flh/projects/kdevplatform/shell/documentcontroller.cpp:493 activeAreaIndex = 0xae9930 afterActiveView = 0xb0e510 ---Type <return> to continue, or q <return> to quit--- afterActiveDoc = 0x17b45a0 pos = 0 activeDoc = 0x16548e0 activeView = 0x163c400 activeDoc = 0x16548e0 buddyFinder = 0x165bf38 buddyView = 0x0 placeAfterBuddy = true partView = 0x2150630 activeViewIdx = 0xae9930 addView = true previousActiveDocument = 0x1654900 previousActiveTextView = 0x16fca00 previousActivePosition = {m_line = 66, m_column = 1} url = {d = 0x2c053d0} uiController = 0x9e03a0 area = 0xae9890 sdoc = 0x2c3a810 emitOpened = true activePosition = {m_line = 9916144, m_column = 0} #38 0x00007f680e35d67e in KDevelop::DocumentControllerPrivate::openDocumentInternal(QUrl const&, QString const&, KTextEditor::Range const&, QString const&, QFlags<KDevelop::IDocumentController::DocumentActivation>, KDevelop::IDocument*) (this=0xdc5e10, inputUrl=..., prefName=..., range=..., encoding=..., activationParams=..., buddy=0x0) at /home/flh/projects/kdevplatform/shell/documentcontroller.cpp:341 _encoding = {static null = {<No data fields>}, d = 0x67907a0} url = {d = 0x2c053d0} doc = 0x2c3a830 __PRETTY_FUNCTION__ = "KDevelop::IDocument* KDevelop::DocumentControllerPrivate::openDocumentInternal(const QUrl&, const QString&, const KTextEditor::Range&, const QString&, KDevelop::IDocumentController::DocumentActivation"... #39 0x00007f680e35be2d in KDevelop::DocumentControllerPrivate::chooseDocument() (this=0xdc5e10) at /home/flh/projects/kdevplatform/shell/documentcontroller.cpp:159 u = @0x1641770: {d = 0x2157c20} _container_ = {c = {<QListSpecialMethods<QUrl>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x1641760}, d = 0x1641760}}, i = {i = 0x1641770}, e = {i = 0x1641778}, control = 1} encoding = {static null = {<No data fields>}, d = 0x67907a0} res = {urls = {<QListSpecialMethods<QUrl>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x1641760}, d = 0x1641760}}, encoding = {static null = {<No data fields>}, d = 0x67907a0}} #40 0x00007f680e354749 in KDevelop::DocumentController::<lambda()>::operator()(void) const (__closure=0xdab7a0) at /home/flh/projects/kdevplatform/shell/documentcontroller.cpp:609 this = 0xdd28d0 ac = 0xffffffffffffffff action = 0xffffffffffffffff #41 0x00007f680e35b218 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KDevelop::DocumentController::setupActions()::<lambda()> >::call(KDevelop::DocumentController::<lambda()> &, void **) (f=..., arg=0x7ffdfdba7850) at /usr/include/qt/QtCore/qobjectdefs_impl.h:137 #42 0x00007f680e35b1b3 in QtPrivate::Functor<KDevelop::DocumentController::setupActions()::<lambda()>, 0>::call<QtPrivate::List<>, void>(KDevelop::DocumentController::<lambda()> &, void *, void **) (f=..., arg=0x7ffdfdba7850) at /usr/include/qt/QtCore/qobjectdefs_impl.h:194 #43 0x00007f680e35b157 in QtPrivate::QFunctorSlotObject<KDevelop::DocumentController::setupActions()::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0xdab790, r=0xdd28d0, a=0x7ffdfdba7850, ret=0x0) at /usr/include/qt/QtCore/qobject_impl.h:168 #44 0x00007f6807a764be in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5 #45 0x00007f6808725c92 in QAction::triggered(bool) () at /usr/lib/libQt5Widgets.so.5 #46 0x00007f68087283f0 in QAction::activate(QAction::ActionEvent) () at /usr/lib/libQt5Widgets.so.5 #47 0x00007f6808728d6c in QAction::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5 #48 0x00007f680872c34c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5 #49 0x00007f6808733b61 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5 #50 0x00007f6807a4a840 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5 #51 0x00007f6807fc4f28 in QShortcutMap::dispatchEvent(QKeyEvent*) () at /usr/lib/libQt5Gui.so.5 #52 0x00007f6807fc4fe9 in QShortcutMap::tryShortcut(QKeyEvent*) () at /usr/lib/libQt5Gui.so.5 #53 0x00007f6807f795af in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, uns---Type <return> to continue, or q <return> to quit--- igned short) () at /usr/lib/libQt5Gui.so.5 #54 0x00007f6807f94504 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () at /usr/lib/libQt5Gui.so.5 #55 0x00007f6807f998a5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /usr/lib/libQt5Gui.so.5 #56 0x00007f6807f7544b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Gui.so.5 #57 0x00007f67ee6189e0 in () at /usr/lib/libQt5XcbQpa.so.5 #58 0x00007f67fb447587 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0 #59 0x00007f67fb4477f0 in () at /usr/lib/libglib-2.0.so.0 #60 0x00007f67fb44789c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0 #61 0x00007f6807a9f44f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 #62 0x00007f6807a48c9a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5 #63 0x00007f6807a511e4 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5 #64 0x000000000040f341 in main(int, char**) (argc=3, argv=0x7ffdfdbaa348) at /home/flh/projects/kdevelop/app/main.cpp:763 timer = {t1 = -9223372036854775808, t2 = -9223372036854775808} description = "The KDevelop Integrated Development Environment" aboutData = {d = 0x89de00} debugArgs = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f6807af7220 <QListData::shared_null>}, d = 0x7f6807af7220 <QListData::shared_null>}}, <No data fields>} debugeeName = {static null = {<No data fields>}, d = 0x7f6807af5860 <QArrayData::shared_null>} app = {<QApplication> = {<No data fields>}, <No data fields>} migrator = {d = 0x926da0} __PRETTY_FUNCTION__ = "int main(int, char**)" parser = {d = 0x89ad00} initialFiles = {d = 0x7f6807af5860 <QArrayData::shared_null>} availableSessionInfos = {d = 0x95b9f0} session = {static null = {<No data fields>}, d = 0x928400} nRunningSessions = 0 core = 0x974ef0 projectNames = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f6807af7220 <QListData::shared_null>}, d = 0x7f6807af7220 <QListData::shared_null>}}, <No data fields>} to me, it looks like a hang in KDevelop::DUChainPrivate::loadChain - there are three threads in there, all from python, all from places where the duchain is readlocked and thus block the other threads (like clang) that try to access the duchain for writing. I think the loadChain bug arises due the recursion: thread A: - enters loadChain - locks m_chainsMutex - puts file X into m_loading - unlocks m_chainsMutex thread B - enters loadChain - locks m_chainsMutex -puts file Y into m_loading - unlocks m_chainsMutex thread A: - recurses - locks m_chainsMutex - tries to load Y -> blocked by B thread B - recurses - locks m_chainsMutex - tries to load X -> blocked by A -> deadlock I think this only can arise when we have a cycle in the import structure, i.e. X -> Y -> X and probably that is only triggered by python which is why I haven't seen that ever. The importsCache afaik also guards against this and would eliminate the code path at play here. Yep, looking at the indices this becomes clear: thread 11: 1474 -> 1473 thread 9: 1488 -> 1473 thread 8: 1585 -> 1473 -> 1474 thread 11 and thread 8 trigger the deadlock Thank you for the crash report. As it has been a while since this was reported, can you please test and confirm if this issue is still occurring or if this bug report can be marked as resolved. I have set the bug status to "needsinfo" pending your response, please change back to "reported" or "resolved/worksforme" when you respond, thank you. Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone! This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging Thank you for helping us make KDE software even better for everyone! |