Application: kdevelop (4.90.92) (Compiled from sources) Qt Version: 5.7.0 Frameworks Version: 5.25.0 Operating System: Linux 4.6.0-1-amd64 x86_64 Distribution: Debian GNU/Linux testing (stretch) -- Information about the crash: Steps to reproduce: - start a unit unit that enters a gdb session due to eg. a segfault - whilte gdb is still starting, stop that unit test - the appended crash occurs 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". [Current thread is 1 (Thread 0x7f6695d09940 (LWP 23883))] Thread 14 (Thread 0x7f6646ee9700 (LWP 23965)): #0 0x00007f66a7a7509f in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f66a7756ee4 in QTWTF::TCMalloc_PageHeap::scavengerThread() (this=0x7f66a783d1a0 <QTWTF::pageheap_memory>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359 #2 0x00007f66a7756f29 in QTWTF::TCMalloc_PageHeap::runScavengerThread(void*) (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464 #3 0x00007f66a7a6f464 in start_thread (arg=0x7f6646ee9700) at pthread_create.c:333 #4 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 13 (Thread 0x7f664549a700 (LWP 23942)): #0 0x00007f66afa62a28 in QMutex::unlock() (__m2=<optimized out>, __m1=std::memory_order_release, __p2=0x0, __p1=@0x7f66454999b0: 0x1, this=0x455a5d0) at /usr/include/c++/5/bits/atomic_base.h:752 #1 0x00007f66afa62a28 in QMutex::unlock() (__m=std::memory_order_release, __p2=0x0, __p1=@0x7f66454999b0: 0x1, this=0x455a5d0) at /usr/include/c++/5/atomic:475 #2 0x00007f66afa62a28 in QMutex::unlock() (currentValue=<synthetic pointer>, newValue=0x0, expectedValue=0x1, _q_value=...) at ../../include/QtCore/../../src/corelib/arch/qatomic_cxx11.h:174 #3 0x00007f66afa62a28 in QMutex::unlock() (currentValue=<synthetic pointer>, newValue=0x0, expectedValue=<optimized out>, this=this@entry=0x455a5d0) at ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:261 #4 0x00007f66afa62a28 in QMutex::unlock() (current=<synthetic pointer>, this=this@entry=0x455a5d0) at thread/qmutex.h:91 #5 0x00007f66afa62a28 in QMutex::unlock() (this=this@entry=0x455a5d0) at thread/qmutex.cpp:277 #6 0x00007f66afc81a3d in postEventSourcePrepare(GSource*, gint*) (this=<synthetic pointer>) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:144 #7 0x00007f66afc81a3d in postEventSourcePrepare(GSource*, gint*) (this=<synthetic pointer>, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:138 #8 0x00007f66afc81a3d in postEventSourcePrepare(GSource*, gint*) (this=0x455a5a0) at ../../include/QtCore/5.7.0/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:254 #9 0x00007f66afc81a3d in postEventSourcePrepare(GSource*, gint*) (s=0x7f66303c5e00, timeout=timeout@entry=0x7f6645499a34) at kernel/qeventdispatcher_glib.cpp:259 #10 0x00007f66a2c8592d in g_main_context_prepare (context=context@entry=0x7f6630086a60, priority=priority@entry=0x7f6645499ac0) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3442 #11 0x00007f66a2c862cb in g_main_context_iterate (context=context@entry=0x7f6630086a60, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3820 #12 0x00007f66a2c864ac in g_main_context_iteration (context=0x7f6630086a60, may_block=may_block@entry=1) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3901 #13 0x00007f66afc8229b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f6630a21220, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #14 0x00007f66afc301ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f6645499bf0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:210 #15 0x00007f66afa662ac in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:511 #16 0x00007f66acf121ef in KDevelop::CompletionWorkerThread::run() (this=0x455c8a0) at /opt/kde/src/extragear/kdevelop/kdevplatform/language/codecompletion/codecompletionmodel.cpp:89 #17 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x455c8a0) at thread/qthread_unix.cpp:343 #18 0x00007f66a7a6f464 in start_thread (arg=0x7f664549a700) at pthread_create.c:333 #19 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 12 (Thread 0x7f66466e8700 (LWP 23914)): #0 0x00007f66aee5c17d in read () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007f66a2cc9740 in g_wakeup_acknowledge (__nbytes=16, __buf=0x7f66466e7a90, __fd=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/unistd.h:44 #2 0x00007f66a2cc9740 in g_wakeup_acknowledge (wakeup=0x7f664c0027a0) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gwakeup.c:210 #3 0x00007f66a2c85e84 in g_main_context_check (context=context@entry=0x7f6638100660, max_priority=2147483647, fds=fds@entry=0x7f6638003c80, n_fds=n_fds@entry=1) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3632 #4 0x00007f66a2c86340 in g_main_context_iterate (context=context@entry=0x7f6638100660, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3837 #5 0x00007f66a2c864ac in g_main_context_iteration (context=0x7f6638100660, may_block=may_block@entry=1) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3901 #6 0x00007f66afc8229b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f6638001640, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #7 0x00007f66afc301ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f66466e7c90, flags=..., flags@entry=...) at kernel/qeventloop.cpp:210 #8 0x00007f66afa662ac in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:511 #9 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x7f66b4bae3b8 <KDevelop::(anonymous namespace)::Q_QGS_s_parsingThread::innerFunction()::holder+8>) at thread/qthread_unix.cpp:343 #10 0x00007f66a7a6f464 in start_thread (arg=0x7f66466e8700) at pthread_create.c:333 #11 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 11 (Thread 0x7f665d752700 (LWP 23904)): #0 0x00007f66a7a7509f in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x11864b0) at thread/qwaitcondition_unix.cpp:143 #2 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x102ece0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:215 #3 0x00007f66abd2d546 in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=0x11863c0, th=0x7f6654002e20) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:594 #4 0x00007f66abd2d21f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x11863c0, th=0x7f6654002e20, threadWasBusy=false, suspendIfInactive=false, justReturning=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:554 #5 0x00007f66abd35c47 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f6654002e20, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:66 #6 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f6654002e20, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #7 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f6654002e20, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #8 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f6654002e20, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #9 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f6654002e20, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #10 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f6654002e20, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #11 0x00007f66abd31d1e in ThreadWeaver::Thread::run() (this=0x7f6654002e20) at /opt/kde/src/frameworks/threadweaver/src/thread.cpp:103 #12 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x7f6654002e20) at thread/qthread_unix.cpp:343 #13 0x00007f66a7a6f464 in start_thread (arg=0x7f665d752700) at pthread_create.c:333 #14 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 10 (Thread 0x7f665df53700 (LWP 23903)): #0 0x00007f66a7a7509f in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x11864b0) at thread/qwaitcondition_unix.cpp:143 #2 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x102ece0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:215 #3 0x00007f66abd2d546 in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=0x11863c0, th=0x7f66500027d0) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:594 #4 0x00007f66abd2d21f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x11863c0, th=0x7f66500027d0, threadWasBusy=false, suspendIfInactive=false, justReturning=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:554 #5 0x00007f66abd35c47 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:66 #6 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #7 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #8 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #9 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #10 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #11 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #12 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #13 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #14 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #15 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #16 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66500027d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #17 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66500027d0, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #18 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66500027d0, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #19 0x00007f66abd31d1e in ThreadWeaver::Thread::run() (this=0x7f66500027d0) at /opt/kde/src/frameworks/threadweaver/src/thread.cpp:103 #20 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x7f66500027d0) at thread/qthread_unix.cpp:343 #21 0x00007f66a7a6f464 in start_thread (arg=0x7f665df53700) at pthread_create.c:333 #22 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 9 (Thread 0x7f665e754700 (LWP 23902)): #0 0x00007f66a7a7509f in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x11864b0) at thread/qwaitcondition_unix.cpp:143 #2 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x102ece0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:215 #3 0x00007f66abd2d546 in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=0x11863c0, th=0x7f66580035d0) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:594 #4 0x00007f66abd2d21f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x11863c0, th=0x7f66580035d0, threadWasBusy=false, suspendIfInactive=false, justReturning=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:554 #5 0x00007f66abd35c47 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:66 #6 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #7 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #8 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #9 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #10 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #11 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #12 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #13 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #14 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66580035d0, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #15 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f66580035d0, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #16 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f66580035d0, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #17 0x00007f66abd31d1e in ThreadWeaver::Thread::run() (this=0x7f66580035d0) at /opt/kde/src/frameworks/threadweaver/src/thread.cpp:103 #18 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x7f66580035d0) at thread/qthread_unix.cpp:343 #19 0x00007f66a7a6f464 in start_thread (arg=0x7f665e754700) at pthread_create.c:333 #20 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 8 (Thread 0x7f665ef55700 (LWP 23901)): #0 0x00007f66a7a7509f in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x11864b0) at thread/qwaitcondition_unix.cpp:143 #2 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x102ece0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:215 #3 0x00007f66abd2d546 in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=0x11863c0, th=0x7f6658002e20) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:594 #4 0x00007f66abd2d21f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x11863c0, th=0x7f6658002e20, threadWasBusy=true, suspendIfInactive=false, justReturning=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:554 #5 0x00007f66abd35c47 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x7f6658002e20, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:66 #6 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x7f6658002e20, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #7 0x00007f66abd31d1e in ThreadWeaver::Thread::run() (this=0x7f6658002e20) at /opt/kde/src/frameworks/threadweaver/src/thread.cpp:103 #8 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x7f6658002e20) at thread/qthread_unix.cpp:343 #9 0x00007f66a7a6f464 in start_thread (arg=0x7f665ef55700) at pthread_create.c:333 #10 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 7 (Thread 0x7f6666dbb700 (LWP 23900)): #0 0x00007f66a7a7509f in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x11864b0) at thread/qwaitcondition_unix.cpp:143 #2 0x00007f66afa6b97b in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x102ece0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:215 #3 0x00007f66abd2d546 in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned_locked(ThreadWeaver::Thread*) (this=0x11863c0, th=0x3fd0e60) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:594 #4 0x00007f66abd2d21f in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) (this=0x11863c0, th=0x3fd0e60, threadWasBusy=false, suspendIfInactive=false, justReturning=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:554 #5 0x00007f66abd35c47 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x3fd0e60, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:66 #6 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x3fd0e60, wasBusy=false) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #7 0x00007f66abd35d4a in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) (this=0x1025da0, th=0x3fd0e60, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/workinghardstate.cpp:73 #8 0x00007f66abd2d360 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) (this=0x11863c0, th=0x3fd0e60, wasBusy=true) at /opt/kde/src/frameworks/threadweaver/src/weaver.cpp:568 #9 0x00007f66abd31d1e in ThreadWeaver::Thread::run() (this=0x3fd0e60) at /opt/kde/src/frameworks/threadweaver/src/thread.cpp:103 #10 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x3fd0e60) at thread/qthread_unix.cpp:343 #11 0x00007f66a7a6f464 in start_thread (arg=0x7f6666dbb700) at pthread_create.c:333 #12 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 6 (Thread 0x7f66665ba700 (LWP 23892)): #0 0x00007f66a2ccaae4 in g_mutex_unlock (mutex=0x7f6660002cd0) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gthread-posix.c:1347 #1 0x00007f66a2c85920 in g_main_context_prepare (context=context@entry=0x7f6660002cd0, priority=priority@entry=0x7f66665b9b40) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3440 #2 0x00007f66a2c862cb in g_main_context_iterate (context=context@entry=0x7f6660002cd0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3820 #3 0x00007f66a2c864ac in g_main_context_iteration (context=0x7f6660002cd0, may_block=may_block@entry=1) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3901 #4 0x00007f66afc8229b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f6660002c00, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #5 0x00007f66afc301ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f66665b9c70, flags=..., flags@entry=...) at kernel/qeventloop.cpp:210 #6 0x00007f66afa662ac in QThread::exec() (this=this@entry=0x2cc66d0) at thread/qthread.cpp:511 #7 0x00007f66b50e4875 in QQmlThreadPrivate::run() (this=0x2cc66d0) at qml/ftw/qqmlthread.cpp:147 #8 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x2cc66d0) at thread/qthread_unix.cpp:343 #9 0x00007f66a7a6f464 in start_thread (arg=0x7f66665ba700) at pthread_create.c:333 #10 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 5 (Thread 0x7f666cf54700 (LWP 23888)): #0 0x00007f66afc81770 in socketNotifierSourcePrepare(GSource*, gint*) (timeout=timeout@entry=0x7f666cf53a34) at kernel/qeventdispatcher_glib.cpp:69 #1 0x00007f66a2c8592d in g_main_context_prepare (context=context@entry=0x7f6668000990, priority=priority@entry=0x7f666cf53ac0) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3442 #2 0x00007f66a2c862cb in g_main_context_iterate (context=context@entry=0x7f6668000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3820 #3 0x00007f66a2c864ac in g_main_context_iteration (context=0x7f6668000990, may_block=may_block@entry=1) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3901 #4 0x00007f66afc8229b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f66680008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #5 0x00007f66afc301ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f666cf53bf0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:210 #6 0x00007f66afa662ac in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:511 #7 0x00007f66acf121ef in KDevelop::CompletionWorkerThread::run() (this=0x18f7eb0) at /opt/kde/src/extragear/kdevelop/kdevplatform/language/codecompletion/codecompletionmodel.cpp:89 #8 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x18f7eb0) at thread/qthread_unix.cpp:343 #9 0x00007f66a7a6f464 in start_thread (arg=0x7f666cf54700) at pthread_create.c:333 #10 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 4 (Thread 0x7f6679d2b700 (LWP 23887)): #0 0x00007f66a2c85322 in g_main_context_acquire (context=0x7f6674000990) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3211 #1 0x00007f66a2c86255 in g_main_context_iterate (context=context@entry=0x7f6674000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3790 #2 0x00007f66a2c864ac in g_main_context_iteration (context=0x7f6674000990, may_block=may_block@entry=1) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3901 #3 0x00007f66afc8229b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f66740008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #4 0x00007f66afc301ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f6679d2abf0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:210 #5 0x00007f66afa662ac in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:511 #6 0x00007f66acf121ef in KDevelop::CompletionWorkerThread::run() (this=0x13db1f0) at /opt/kde/src/extragear/kdevelop/kdevplatform/language/codecompletion/codecompletionmodel.cpp:89 #7 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x13db1f0) at thread/qthread_unix.cpp:343 #8 0x00007f66a7a6f464 in start_thread (arg=0x7f6679d2b700) at pthread_create.c:333 #9 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 3 (Thread 0x7f668191e700 (LWP 23886)): #0 0x00007f66a7a75448 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225 #1 0x00007f66afa6b8c6 in QWaitCondition::wait(QMutex*, unsigned long) (time=1000, this=0x13548c0) at thread/qwaitcondition_unix.cpp:133 #2 0x00007f66afa6b8c6 in QWaitCondition::wait(QMutex*, unsigned long) (time=1000, this=0x13548c0) at thread/qwaitcondition_unix.cpp:141 #3 0x00007f66afa6b8c6 in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x1353800, time=1000) at thread/qwaitcondition_unix.cpp:215 #4 0x00007f66acdbe513 in KDevelop::DUChainPrivate::CleanupThread::run() (this=0x13537e0) at /opt/kde/src/extragear/kdevelop/kdevplatform/language/duchain/duchain.cpp:282 #5 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x13537e0) at thread/qthread_unix.cpp:343 #6 0x00007f66a7a6f464 in start_thread (arg=0x7f668191e700) at pthread_create.c:333 #7 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 2 (Thread 0x7f6691ed0700 (LWP 23885)): #0 0x00007f66a2c85e09 in g_main_context_check (context=context@entry=0x7f6684000990, max_priority=2147483647, fds=fds@entry=0x7f6684018f40, n_fds=n_fds@entry=1) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3733 #1 0x00007f66a2c86340 in g_main_context_iterate (context=context@entry=0x7f6684000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3837 #2 0x00007f66a2c864ac in g_main_context_iteration (context=0x7f6684000990, may_block=may_block@entry=1) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3901 #3 0x00007f66afc8229b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f66840008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #4 0x00007f66afc301ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f6691ecfc60, flags=..., flags@entry=...) at kernel/qeventloop.cpp:210 #5 0x00007f66afa662ac in QThread::exec() (this=this@entry=0x7f66b5ec9580 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:511 #6 0x00007f66b5e593d5 in QDBusConnectionManager::run() (this=0x7f66b5ec9580 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:187 #7 0x00007f66afa6abd9 in QThreadPrivate::start(void*) (arg=0x7f66b5ec9580 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:343 #8 0x00007f66a7a6f464 in start_thread (arg=0x7f6691ed0700) at pthread_create.c:333 #9 0x00007f66aee6930d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 1 (Thread 0x7f6695d09940 (LWP 23883)): [KCrash Handler] #6 0x00007f66aedb51c8 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54 #7 0x00007f66aedb664a in __GI_abort () at abort.c:89 #8 0x00007f66afa523ae in QMessageLogger::fatal(char const*, ...) const (context=..., message=<synthetic pointer>) at global/qlogging.cpp:1647 #9 0x00007f66afa523ae in QMessageLogger::fatal(char const*, ...) const (this=this@entry=0x7ffc9f2e0650, msg=msg@entry=0x7f66afce9920 "ASSERT: \"%s\" in file %s, line %d") at global/qlogging.cpp:792 #10 0x00007f66afa4dd6e in qt_assert(char const*, char const*, int) (assertion=<optimized out>, file=<optimized out>, line=<optimized out>) at global/qglobal.cpp:3059 #11 0x00007f66b4997f1a in KDevelop::OutputExecuteJob::~OutputExecuteJob() (this=0x484c040, __in_chrg=<optimized out>) at /opt/kde/src/extragear/kdevelop/kdevplatform/outputview/outputexecutejob.cpp:102 #12 0x00007f66739c8566 in NativeAppJob::~NativeAppJob() (this=0x484c040, __in_chrg=<optimized out>) at /opt/kde/build/extragear/kdevelop/kdevplatform/plugins/execute/../../../../../../src/extragear/kdevelop/kdevplatform/plugins/execute/nativeappjob.h:34 #13 0x00007f66739c8596 in NativeAppJob::~NativeAppJob() (this=0x484c040, __in_chrg=<optimized out>) at /opt/kde/build/extragear/kdevelop/kdevplatform/plugins/execute/../../../../../../src/extragear/kdevelop/kdevplatform/plugins/execute/nativeappjob.h:34 #14 0x00007f66afc5bac8 in QObject::event(QEvent*) (this=0x484c040, e=<optimized out>) at kernel/qobject.cpp:1254 #15 0x00007f66b0500f8c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x484c040, e=0x18aeab0) at kernel/qapplication.cpp:3799 #16 0x00007f66b0508476 in QApplication::notify(QObject*, QEvent*) (this=0x7ffc9f2e0e80, receiver=0x484c040, e=0x18aeab0) at kernel/qapplication.cpp:3556 #17 0x00007f66afc31c58 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x484c040, event=event@entry=0x18aeab0) at kernel/qcoreapplication.cpp:988 #18 0x00007f66afc3424b in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (event=0x18aeab0, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231 #19 0x00007f66afc3424b in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0xd8ffa0) at kernel/qcoreapplication.cpp:1649 #20 0x00007f66afc346b8 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1503 #21 0x00007f66afc81e73 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0xdd1310) at kernel/qeventdispatcher_glib.cpp:276 #22 0x00007f66a2c861a7 in g_main_context_dispatch (context=0x7f668c0016f0) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3154 #23 0x00007f66a2c861a7 in g_main_context_dispatch (context=context@entry=0x7f668c0016f0) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3769 #24 0x00007f66a2c86400 in g_main_context_iterate (context=context@entry=0x7f668c0016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3840 #25 0x00007f66a2c864ac in g_main_context_iteration (context=0x7f668c0016f0, may_block=may_block@entry=1) at /build/glib2.0-wnDt2X/glib2.0-2.48.1/./glib/gmain.c:3901 #26 0x00007f66afc8227f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0xe13d90, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #27 0x00007f66afc301ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffc9f2e0be0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:210 #28 0x00007f66afc381ad in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1261 #29 0x000000000040f59d in main(int, char**) (argc=3, argv=0x7ffc9f2e2f68) at /opt/kde/src/extragear/kdevelop/kdevelop/app/main.cpp:759 Possible duplicates by query: bug 364721, bug 363707, bug 362635, bug 362228, bug 355392. Reported using DrKonqi
Git commit 1d87fc6302657922354a6fc49e2ce0b1d0d1f918 by Andreas Cord-Landwehr. Committed on 17/07/2016 at 12:27. Pushed by cordlandwehr into branch '5.0'. Do not assert if process survives kill. Summary: If process survives kill, an error message is already printed to indicate the problem. Since we cannot hope to kill the process, gracefully handle this case. Test Plan: Manual testing. Reviewers: #kdevelop, brauch Reviewed By: #kdevelop, brauch Subscribers: brauch, kdevelop-devel Differential Revision: https://phabricator.kde.org/D2195 M +10 -4 outputview/outputexecutejob.cpp http://commits.kde.org/kdevplatform/1d87fc6302657922354a6fc49e2ce0b1d0d1f918