Bug 212008 - KRunner crashes when trying to complete [QList<ThreadWeaver::QueuePolicy*>::free, ~QList, ~QueuePolicyList]
Summary: KRunner crashes when trying to complete [QList<ThreadWeaver::QueuePolicy*>::f...
Status: RESOLVED DUPLICATE of bug 196207
Alias: None
Product: krunner
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-10-27 00:45 UTC by Kelvie Wong
Modified: 2009-12-17 19:02 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Kelvie Wong 2009-10-27 00:45:31 UTC
Application: krunner (0.1)
KDE Version: 4.3.72 (KDE 4.3.72 (KDE 4.4 >= 20091015)) (Compiled from sources)
Qt Version: 4.6.0
Operating System: Linux 2.6.32-rc5-00081-g964fe08 x86_64
Distribution: "Gentoo Base System release 2.0.1"

What I was doing when the application crashed:
This happens quite often, in the middle of typing something, krunner just crashes.

This time, I tried to type 'konsole'.

 -- Backtrace:
Application: Run Command Interface (kdeinit4), signal: Aborted
[Current thread is 1 (Thread 0x7fa73f135770 (LWP 9524))]

Thread 5 (Thread 0x7fa71a33c910 (LWP 9742)):
#0  0x00007fa73e8dcc79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fa73eb653cb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00007fa72ea520b6 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8a0250, th=0x8035c0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:365
#3  0x00007fa72ea5476b in ThreadWeaver::WorkingHardState::applyForWork (this=0x877470, th=0x8035c0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:71
#4  0x00007fa72ea52c1f in ThreadWeaver::ThreadRunHelper::run (this=0x7fa71a33c020, parent=0x8a0250, th=0x8035c0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Thread.cpp:87
#5  0x00007fa72ea53078 in ThreadWeaver::Thread::run (this=0x8035c0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Thread.cpp:142
#6  0x00007fa73eb64405 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#7  0x00007fa73e8d81f7 in start_thread () from /lib/libpthread.so.0
#8  0x00007fa73b3e042d in clone () from /lib/libc.so.6
#9  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fa719b3b910 (LWP 9743)):
#0  0x00007fa73e8dcc79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fa73eb653cb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00007fa72ea520b6 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8a0250, th=0x8afbb0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:365
#3  0x00007fa72ea5476b in ThreadWeaver::WorkingHardState::applyForWork (this=0x877470, th=0x8afbb0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:71
#4  0x00007fa72ea52c1f in ThreadWeaver::ThreadRunHelper::run (this=0x7fa719b3b020, parent=0x8a0250, th=0x8afbb0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Thread.cpp:87
#5  0x00007fa72ea53078 in ThreadWeaver::Thread::run (this=0x8afbb0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Thread.cpp:142
#6  0x00007fa73eb64405 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#7  0x00007fa73e8d81f7 in start_thread () from /lib/libpthread.so.0
#8  0x00007fa73b3e042d in clone () from /lib/libc.so.6
#9  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fa71933a910 (LWP 9744)):
#0  0x00007fa73e8dcc79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fa73eb653cb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00007fa72ea520b6 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8a0250, th=0xb60670) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:365
#3  0x00007fa72ea5476b in ThreadWeaver::WorkingHardState::applyForWork (this=0x877470, th=0xb60670) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:71
#4  0x00007fa72ea52c1f in ThreadWeaver::ThreadRunHelper::run (this=0x7fa71933a020, parent=0x8a0250, th=0xb60670) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Thread.cpp:87
#5  0x00007fa72ea53078 in ThreadWeaver::Thread::run (this=0xb60670) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Thread.cpp:142
#6  0x00007fa73eb64405 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#7  0x00007fa73e8d81f7 in start_thread () from /lib/libpthread.so.0
#8  0x00007fa73b3e042d in clone () from /lib/libc.so.6
#9  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fa718b39910 (LWP 9745)):
#0  0x00007fa73e8dcc79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fa73eb653cb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00007fa72ea520b6 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8a0250, th=0xb6c2d0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:365
#3  0x00007fa72ea5476b in ThreadWeaver::WorkingHardState::applyForWork (this=0x877470, th=0xb6c2d0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:71
#4  0x00007fa72ea52c1f in ThreadWeaver::ThreadRunHelper::run (this=0x7fa718b39020, parent=0x8a0250, th=0xb6c2d0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Thread.cpp:87
#5  0x00007fa72ea53078 in ThreadWeaver::Thread::run (this=0xb6c2d0) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Thread.cpp:142
#6  0x00007fa73eb64405 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#7  0x00007fa73e8d81f7 in start_thread () from /lib/libpthread.so.0
#8  0x00007fa73b3e042d in clone () from /lib/libc.so.6
#9  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fa73f135770 (LWP 9524)):
[KCrash Handler]
#5  0x00007fa73b349a75 in raise () from /lib/libc.so.6
#6  0x00007fa73b34aebe in abort () from /lib/libc.so.6
#7  0x00007fa73b3829ab in __libc_message () from /lib/libc.so.6
#8  0x00007fa73b387ccc in malloc_printerr () from /lib/libc.so.6
#9  0x00007fa72ea5409f in QList<ThreadWeaver::QueuePolicy*>::free (this=0xe583c0, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qlist.h:649
#10 ~QList (this=0xe583c0, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qlist.h:621
#11 ~QueuePolicyList (this=0xe583c0, __in_chrg=<value optimized out>) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Job.cpp:47
#12 ~Private (this=0xe583c0, __in_chrg=<value optimized out>) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Job.cpp:61
#13 ~Job (this=0xe583c0, __in_chrg=<value optimized out>) at /home/kelvie/src/git/kde/kdelibs/threadweaver/Weaver/Job.cpp:89
#14 0x00007fa7306a15ff in ~FindMatchesJob (this=0xe583c0, __in_chrg=<value optimized out>) at /home/kelvie/src/git/kde/kdelibs/plasma/private/runnerjobs.cpp:141
#15 0x00007fa73ec659cd in QObject::event(QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#16 0x00007fa73bfc2dac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#17 0x00007fa73bfcbb20 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#18 0x00007fa73d05dc46 in KApplication::notify (this=0x69b5f0, receiver=0xe583c0, event=0xe590c0) at /home/kelvie/src/git/kde/kdelibs/kdeui/kernel/kapplication.cpp:302
#19 0x00007fa73ec55e8b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#20 0x00007fa73ec585d6 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/qt4/libQtCore.so.4
#21 0x00007fa73ec7f593 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /usr/lib64/qt4/libQtCore.so.4
#22 0x00007fa73a84b402 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#23 0x00007fa73a84e6eb in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#24 0x00007fa73a84ebbf in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#25 0x00007fa73ec7f0d3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#26 0x00007fa73c0587ae in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtGui.so.4
#27 0x00007fa73ec547e2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#28 0x00007fa73ec54bb4 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#29 0x00007fa73ec5889b in QCoreApplication::exec() () from /usr/lib64/qt4/libQtCore.so.4
#30 0x00007fa72c8076b4 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /home/kelvie/src/git/kde/kdebase/workspace/krunner/main.cpp:65
#31 0x0000000000406fa8 in launch (argc=1, _name=<value optimized out>, args=<value optimized out>, cwd=<value optimized out>, envc=0, envs=<value optimized out>, reset_env=false, tty=0x0, 
    avoid_loops=false, startup_id_str=0x40a489 "0") at /home/kelvie/src/git/kde/kdelibs/kinit/kinit.cpp:705
#32 0x0000000000407c70 in handle_launcher_request (sock=8, who=<value optimized out>) at /home/kelvie/src/git/kde/kdelibs/kinit/kinit.cpp:1197
#33 0x0000000000408111 in handle_requests (waitForPid=0) at /home/kelvie/src/git/kde/kdelibs/kinit/kinit.cpp:1390
#34 0x0000000000408dca in main (argc=4, argv=<value optimized out>, envp=<value optimized out>) at /home/kelvie/src/git/kde/kdelibs/kinit/kinit.cpp:1825

Reported using DrKonqi
Comment 1 Jacopo De Simoi 2009-12-17 19:02:22 UTC
This is in fact a glibc bug, due to a race in free(), it should be fixed in 2.11.1

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