Application: ktorrent (4.1rc1) KDE Platform Version: 4.5.1 (KDE 4.5.1) Qt Version: 4.7.0 Operating System: Linux 2.6.35-25-generic x86_64 Distribution: Ubuntu 10.10 -- Information about the crash: - What I was doing when the application crashed: scrolled with wheel shortly after clicking on "Suspend KTorrent" The crash can be reproduced every time. -- Backtrace: Application: KTorrent (ktorrent), signal: Segmentation fault [Current thread is 1 (Thread 0x7f33d39cd760 (LWP 9919))] Thread 8 (Thread 0x7f33be60c700 (LWP 9921)): #0 0x00007f33cebfc203 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=593) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00007f33c9d79009 in ?? () from /lib/libglib-2.0.so.0 #2 0x00007f33c9d7945c in g_main_context_iteration () from /lib/libglib-2.0.so.0 #3 0x00007f33d09591e6 in QEventDispatcherGlib::processEvents (this=0x7f33b80008b0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:417 #4 0x00007f33d092ba02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149 #5 0x00007f33d092bdec in QEventLoop::exec (this=0x7f33be60bdd0, flags=) at kernel/qeventloop.cpp:201 #6 0x00007f33d08362fd in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490 #7 0x00007f33d3525536 in utp::UTPServerThread::run (this=0x25f7e90) at /home/nico/libktorrent-1.1rc1/src/utp/utpserverthread.cpp:41 #8 0x00007f33d083927e in QThreadPrivate::start (arg=0x25f7e90) at thread/qthread_unix.cpp:266 #9 0x00007f33d05ae971 in start_thread (arg=<value optimized out>) at pthread_create.c:304 #10 0x00007f33cec0892d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #11 0x0000000000000000 in ?? () Thread 7 (Thread 0x7f33bee0d700 (LWP 9922)): #0 0x00007f33cebfc203 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=500) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00007f33d34361de in net::Poll::poll (this=0x7f33bee0cd40, timeout=500) at /home/nico/libktorrent-1.1rc1/src/net/poll.cpp:99 #2 0x00007f33d34d3e65 in dht::RPCServer::Private::run (this=0x26001e0) at /home/nico/libktorrent-1.1rc1/src/dht/rpcserver.cpp:95 #3 0x00007f33d083927e in QThreadPrivate::start (arg=0x26001e0) at thread/qthread_unix.cpp:266 #4 0x00007f33d05ae971 in start_thread (arg=<value optimized out>) at pthread_create.c:304 #5 0x00007f33cec0892d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #6 0x0000000000000000 in ?? () Thread 6 (Thread 0x7f33b5569700 (LWP 9923)): #0 0x00007f33cebfc203 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00007f33c9d79009 in ?? () from /lib/libglib-2.0.so.0 #2 0x00007f33c9d7945c in g_main_context_iteration () from /lib/libglib-2.0.so.0 #3 0x00007f33d09591e6 in QEventDispatcherGlib::processEvents (this=0x343cee0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:417 #4 0x00007f33d092ba02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149 #5 0x00007f33d092bdec in QEventLoop::exec (this=0x7f33b5568db0, flags=) at kernel/qeventloop.cpp:201 #6 0x00007f33d08362fd in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490 #7 0x00007f33d090b5f8 in QInotifyFileSystemWatcherEngine::run (this=0x343c430) at io/qfilesystemwatcher_inotify.cpp:248 #8 0x00007f33d083927e in QThreadPrivate::start (arg=0x343c430) at thread/qthread_unix.cpp:266 #9 0x00007f33d05ae971 in start_thread (arg=<value optimized out>) at pthread_create.c:304 #10 0x00007f33cec0892d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #11 0x0000000000000000 in ?? () Thread 5 (Thread 0x7f33b2970700 (LWP 9924)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007f33b3c7b20e in ?? () from /usr/lib/libQtWebKit.so.4 #2 0x00007f33b3c7b329 in ?? () from /usr/lib/libQtWebKit.so.4 #3 0x00007f33d05ae971 in start_thread (arg=<value optimized out>) at pthread_create.c:304 #4 0x00007f33cec0892d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #5 0x0000000000000000 in ?? () Thread 4 (Thread 0x7f33ab657700 (LWP 9948)): #0 0x00007f33d3436039 in net::Poll::add (this=0x246f2e0, fd=178, mode=net::Poll::INPUT) at /home/nico/libktorrent-1.1rc1/src/net/poll.cpp:59 #1 0x00007f33d342baf6 in net::Socket::prepare (this=0x7f33b8a3fe60, p=0x246f2e0, mode=net::Poll::INPUT) at /home/nico/libktorrent-1.1rc1/src/net/socket.cpp:454 #2 0x00007f33d342f78c in net::DownloadThread::waitForSocketReady (this=0x246f2d0) at /home/nico/libktorrent-1.1rc1/src/net/downloadthread.cpp:123 #3 0x00007f33d342f3ff in net::DownloadThread::update (this=0x246f2d0) at /home/nico/libktorrent-1.1rc1/src/net/downloadthread.cpp:48 #4 0x00007f33d342fd57 in net::NetworkThread::run (this=0x246f2d0) at /home/nico/libktorrent-1.1rc1/src/net/networkthread.cpp:48 #5 0x00007f33d083927e in QThreadPrivate::start (arg=0x246f2d0) at thread/qthread_unix.cpp:266 #6 0x00007f33d05ae971 in start_thread (arg=<value optimized out>) at pthread_create.c:304 #7 0x00007f33cec0892d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #8 0x0000000000000000 in ?? () Thread 3 (Thread 0x7f33aae56700 (LWP 9949)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007f33d0838533 in QMutexPrivate::wait (this=0x246f250, timeout=-1) at thread/qmutex_unix.cpp:84 #2 0x00007f33d0833ee5 in QMutex::lock (this=0x246f4f0) at thread/qmutex.cpp:167 #3 0x00007f33d342c19a in net::SocketMonitor::lock (this=0x720540) at /home/nico/libktorrent-1.1rc1/src/net/socketmonitor.cpp:108 #4 0x00007f33d342e22d in net::UploadThread::waitForSocketsReady (this=0x246f970) at /home/nico/libktorrent-1.1rc1/src/net/uploadthread.cpp:112 #5 0x00007f33d342df67 in net::UploadThread::update (this=0x246f970) at /home/nico/libktorrent-1.1rc1/src/net/uploadthread.cpp:45 #6 0x00007f33d342fd57 in net::NetworkThread::run (this=0x246f970) at /home/nico/libktorrent-1.1rc1/src/net/networkthread.cpp:48 #7 0x00007f33d083927e in QThreadPrivate::start (arg=0x246f970) at thread/qthread_unix.cpp:266 #8 0x00007f33d05ae971 in start_thread (arg=<value optimized out>) at pthread_create.c:304 #9 0x00007f33cec0892d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #10 0x0000000000000000 in ?? () Thread 2 (Thread 0x7f33aa655700 (LWP 9950)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007f33d0839e3b in wait (this=<value optimized out>, mutex=0x7f33b805dca0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88 #2 QWaitCondition::wait (this=<value optimized out>, mutex=0x7f33b805dca0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160 #3 0x00007f33d3435016 in net::ReverseResolverThread::run (this=0x7f33b805dc90) at /home/nico/libktorrent-1.1rc1/src/net/reverseresolver.cpp:123 #4 0x00007f33d083927e in QThreadPrivate::start (arg=0x7f33b805dc90) at thread/qthread_unix.cpp:266 #5 0x00007f33d05ae971 in start_thread (arg=<value optimized out>) at pthread_create.c:304 #6 0x00007f33cec0892d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #7 0x0000000000000000 in ?? () Thread 1 (Thread 0x7f33d39cd760 (LWP 9919)): [KCrash Handler] #6 0x00007f33d3441f15 in bt::Authenticate::stop (this=0x5a649e0) at /home/nico/libktorrent-1.1rc1/src/peer/authenticate.cpp:211 #7 0x00007f33d3466b20 in bt::PeerConnector::Private::~Private (this=0x530ab30, __in_chrg=<value optimized out>) at /home/nico/libktorrent-1.1rc1/src/peer/peerconnector.cpp:47 #8 0x00007f33d34660be in bt::PeerConnector::~PeerConnector (this=0x3b9c490, __in_chrg=<value optimized out>) at /home/nico/libktorrent-1.1rc1/src/peer/peerconnector.cpp:77 #9 0x00007f33d3442665 in QtSharedPointer::ExternalRefCount<bt::PeerConnector>::internalDestroy (this=0x4748a80) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:392 #10 0x00007f33d34423e1 in QtSharedPointer::ExternalRefCount<bt::PeerConnector>::deref (this=0x4748a80) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:330 #11 0x00007f33d34421f7 in QtSharedPointer::ExternalRefCount<bt::PeerConnector>::~ExternalRefCount (this=0x4748a80, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:381 #12 0x00007f33d34420b0 in QSharedPointer<bt::PeerConnector>::~QSharedPointer (this=0x4748a80, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:442 #13 0x00007f33d3457a46 in QHashNode<QSharedPointer<bt::PeerConnector>, QHashDummyValue>::~QHashNode (this=0x4748a70, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qhash.h:217 #14 0x00007f33d3457a68 in QHash<QSharedPointer<bt::PeerConnector>, QHashDummyValue>::deleteNode2 (node=0x4748a70) at /usr/include/qt4/QtCore/qhash.h:519 #15 0x00007f33d0855d8d in QHashData::free_helper (this=0x41a2da0, node_delete=0x7f33d3457a48 <QHash<QSharedPointer<bt::PeerConnector>, QHashDummyValue>::deleteNode2(QHashData::Node*)>) at tools/qhash.cpp:271 #16 0x00007f33d3456caf in QHash<QSharedPointer<bt::PeerConnector>, QHashDummyValue>::freeData (this=0x2995618, x=0x41a2da0) at /usr/include/qt4/QtCore/qhash.h:568 #17 0x00007f33d3457780 in QHash<QSharedPointer<bt::PeerConnector>, QHashDummyValue>::operator= (this=0x2995618, other=...) at /usr/include/qt4/QtCore/qhash.h:594 #18 0x00007f33d345690e in QHash<QSharedPointer<bt::PeerConnector>, QHashDummyValue>::clear (this=0x2995618) at /usr/include/qt4/QtCore/qhash.h:574 #19 0x00007f33d34557d2 in QSet<QSharedPointer<bt::PeerConnector> >::clear (this=0x2995618) at /usr/include/qt4/QtCore/qset.h:82 #20 0x00007f33d3451c97 in bt::PeerManager::stop (this=0x298e6c0) at /home/nico/libktorrent-1.1rc1/src/peer/peermanager.cpp:429 #21 0x00007f33d34a2765 in bt::TorrentControl::stop (this=0x2971770, wjob=0x0) at /home/nico/libktorrent-1.1rc1/src/torrent/torrentcontrol.cpp:499 #22 0x00007f33d30e8cb3 in kt::QueueManager::stopSafely (this=0x2588890, tc=0x2971770, wjob=0x0) at /home/nico/ktorrent-4.1rc1/libktcore/torrent/queuemanager.cpp:747 #23 0x00007f33d30e8a09 in kt::QueueManager::setSuspendedState (this=0x2588890, suspend=true) at /home/nico/ktorrent-4.1rc1/libktcore/torrent/queuemanager.cpp:714 #24 0x00000000004348b3 in kt::Core::setSuspendedState (this=0x259ded0, suspend=true) at /home/nico/ktorrent-4.1rc1/ktorrent/core.cpp:1192 #25 0x0000000000446ab9 in kt::TorrentActivity::suspendQueue (this=0x25c26f0, suspend=true) at /home/nico/ktorrent-4.1rc1/ktorrent/torrentactivity.cpp:331 #26 0x0000000000427a37 in kt::TorrentActivity::qt_metacall (this=0x25c26f0, _c=QMetaObject::InvokeMetaMethod, _id=11, _a=0x7fff3988e7b0) at /home/nico/ktorrent-4.1rc1/build/ktorrent/moc_torrentactivity.cpp:103 #27 0x00007f33d0944b27 in QMetaObject::activate (sender=0x2dcab80, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x2) at kernel/qobject.cpp:3280 #28 0x00007f33cf7f47f2 in QAction::toggled (this=0x5a649e0, _t1=true) at .moc/release-shared/moc_qaction.cpp:276 #29 0x00007f33cf7f5eab in QAction::setChecked (this=0x2dcab80, b=false) at kernel/qaction.cpp:1072 #30 0x00007f33cf7f5fb5 in QAction::activate (this=0x2dcab80, event=<value optimized out>) at kernel/qaction.cpp:1253 #31 0x00007f33cfbd557a in QAbstractButtonPrivate::click (this=0x37269d0) at widgets/qabstractbutton.cpp:528 #32 0x00007f33cfbd582c in QAbstractButton::mouseReleaseEvent (this=0x300fce0, e=0x7fff3988f170) at widgets/qabstractbutton.cpp:1121 #33 0x00007f33cfca552a in QToolButton::mouseReleaseEvent (this=0x5a649e0, e=0x0) at widgets/qtoolbutton.cpp:721 #34 0x00007f33cf85204e in QWidget::event (this=0x300fce0, event=0x7fff3988f170) at kernel/qwidget.cpp:8187 #35 0x00007f33cf7fbfdc in QApplicationPrivate::notify_helper (this=0x24a6120, receiver=0x300fce0, e=0x7fff3988f170) at kernel/qapplication.cpp:4396 #36 0x00007f33cf80230e in QApplication::notify (this=0x7fff3988fe50, receiver=0x300fce0, e=0x7fff3988f170) at kernel/qapplication.cpp:3959 #37 0x0000000000442cf1 in kt::App::notify (this=0x7fff3988fe50, receiver=0x300fce0, event=0x7fff3988f170) at /home/nico/ktorrent-4.1rc1/ktorrent/app.cpp:97 #38 0x00007f33d092ccdc in QCoreApplication::notifyInternal (this=0x7fff3988fe50, receiver=0x300fce0, event=0x7fff3988f170) at kernel/qcoreapplication.cpp:732 #39 0x00007f33cf800dbe in sendEvent (receiver=0x300fce0, event=0x7fff3988f170, alienWidget=0x300fce0, nativeWidget=0x3724c30, buttonDown=<value optimized out>, lastMouseReceiver=<value optimized out>, spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #40 QApplicationPrivate::sendMouseEvent (receiver=0x300fce0, event=0x7fff3988f170, alienWidget=0x300fce0, nativeWidget=0x3724c30, buttonDown=<value optimized out>, lastMouseReceiver=<value optimized out>, spontaneous=true) at kernel/qapplication.cpp:3058 #41 0x00007f33cf884345 in QETWidget::translateMouseEvent (this=0x3724c30, event=<value optimized out>) at kernel/qapplication_x11.cpp:4403 #42 0x00007f33cf882c5c in QApplication::x11ProcessEvent (this=<value optimized out>, event=0x7fff3988fa90) at kernel/qapplication_x11.cpp:3536 #43 0x00007f33cf8af0e2 in x11EventSourceDispatch (s=0x249ffa0, callback=<value optimized out>, user_data=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:146 #44 0x00007f33c9d75342 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #45 0x00007f33c9d792a8 in ?? () from /lib/libglib-2.0.so.0 #46 0x00007f33c9d7945c in g_main_context_iteration () from /lib/libglib-2.0.so.0 #47 0x00007f33d0959193 in QEventDispatcherGlib::processEvents (this=0x246d350, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:415 #48 0x00007f33cf8aea4e in QGuiEventDispatcherGlib::processEvents (this=0x5a649e0, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204 #49 0x00007f33d092ba02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149 #50 0x00007f33d092bdec in QEventLoop::exec (this=0x7fff3988fdc0, flags=) at kernel/qeventloop.cpp:201 #51 0x00007f33d092febb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009 #52 0x000000000042ce46 in main (argc=5, argv=0x7fff39890cc8) at /home/nico/ktorrent-4.1rc1/ktorrent/main.cpp:177 Reported using DrKonqi
Can you run ktorrent under valgrind ? valgrind --tool=memcheck --num-callers=50 --log-file=vg.log /usr/bin/ktorrent --nofork Post the generated vg.log file. Note that running under valgrind is slow.
Git commit cf60f4bae24ba740e58db6734ec06a230a4ac9c9 by Joris. Committed on 19/02/2011 at 18:52. Pushed by guisson into branch 'master'. Fix crash in peer authentication cleanup BUG: 266622 M +1 -0 ChangeLog M +6 -2 src/peer/authenticate.cpp M +7 -7 src/peer/peerconnector.cpp http://commits.kde.org/libktorrent/cf60f4bae24ba740e58db6734ec06a230a4ac9c9
Git commit 821caa69aeb55a0125d9b1c2a839fb47d6a0af20 by Joris. Committed on 19/02/2011 at 18:52. Pushed by guisson into branch '1.1'. Backport to 1.1: Fix crash in peer authentication cleanup CCBUG: 266622 M +1 -0 ChangeLog M +6 -2 src/peer/authenticate.cpp M +7 -7 src/peer/peerconnector.cpp http://commits.kde.org/libktorrent/821caa69aeb55a0125d9b1c2a839fb47d6a0af20
*** Bug 259899 has been marked as a duplicate of this bug. ***