Bug 244086

Summary: ktorrent crashed until a long run
Product: [Applications] ktorrent Reporter: maninred
Component: generalAssignee: Joris Guisson <joris.guisson>
Status: RESOLVED FIXED    
Severity: crash    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description maninred 2010-07-09 23:26:12 UTC
Application: ktorrent (4.0.1)
KDE Platform Version: 4.4.4 (KDE 4.4.4)
Qt Version: 4.6.3
Operating System: Linux 2.6.34-12-desktop x86_64
Distribution: "openSUSE 11.3 (x86_64)"

-- Information about the crash:
Well,
this time I was not at home when it happends. In regular ktorrent crashes after some hours of run.
This is the first time that kde crash report starts.
I had only one torrent running(a self made) and not much connections.
VHT is running.
May be this helps.

 -- Backtrace:
Application: KTorrent (ktorrent), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f38d8433760 (LWP 5286))]

Thread 6 (Thread 0x7f38c9dcb710 (LWP 5289)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f38d61e4d23 in QMutexPrivate::wait (this=0x7e88b0, timeout=-1) at thread/qmutex_unix.cpp:84
#2  0x00007f38d61e1465 in QMutex::lock (this=0x7e8788) at thread/qmutex.cpp:167
#3  0x00007f38d7fe22b1 in relock (this=0x7e86d0) at /usr/include/QtCore/qmutex.h:120
#4  QMutexLocker (this=0x7e86d0) at /usr/include/QtCore/qmutex.h:102
#5  utp::UTPServer::wakeUpPollPipes (this=0x7e86d0) at /usr/src/debug/libktorrent-1.0.1/src/utp/utpserver.cpp:496
#6  0x00007f38d62de22e in QObject::event (this=0x7e86d0, e=0x7f38c9dcaac0) at kernel/qobject.cpp:1212
#7  0x00007f38d54a14d4 in QApplicationPrivate::notify_helper (this=0x70a770, receiver=0x7e86d0, e=0x7f38c9dcaac0) at kernel/qapplication.cpp:4302
#8  0x00007f38d54a9aca in QApplication::notify (this=<value optimized out>, receiver=0x7e86d0, e=0x7f38c9dcaac0) at kernel/qapplication.cpp:4185
#9  0x00000000004393f1 in kt::App::notify (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at /usr/src/debug/ktorrent-4.0.1/ktorrent/app.cpp:97
#10 0x00007f38d62cce4c in QCoreApplication::notifyInternal (this=0x7fff2afdcbf0, receiver=0x7e86d0, event=0x7f38c9dcaac0) at kernel/qcoreapplication.cpp:726
#11 0x00007f38d62f80c9 in sendEvent (this=0x7e1140) at kernel/qcoreapplication.h:215
#12 QTimerInfoList::activateTimers (this=0x7e1140) at kernel/qeventdispatcher_unix.cpp:618
#13 0x00007f38d62f4ff8 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184
#14 idleTimerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:231
#15 0x00007f38d0603a93 in g_main_dispatch (context=0x7e7c20) at gmain.c:1960
#16 IA__g_main_context_dispatch (context=0x7e7c20) at gmain.c:2513
#17 0x00007f38d0604270 in g_main_context_iterate (context=0x7e7c20, block=1, dispatch=1, self=<value optimized out>) at gmain.c:2591
#18 0x00007f38d0604510 in IA__g_main_context_iteration (context=0x7e7c20, may_block=1) at gmain.c:2654
#19 0x00007f38d62f567f in QEventDispatcherGlib::processEvents (this=0x7e37a0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#20 0x00007f38d62cc292 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#21 0x00007f38d62cc495 in QEventLoop::exec (this=0x7f38c9dcae20, flags=...) at kernel/qeventloop.cpp:201
#22 0x00007f38d61e32cf in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#23 0x00007f38d61e5bf5 in QThreadPrivate::start (arg=0x7e3800) at thread/qthread_unix.cpp:248
#24 0x00007f38d5f57a4f in start_thread (arg=0x7f38c9dcb710) at pthread_create.c:297
#25 0x00007f38d48da82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#26 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f38ca5cc710 (LWP 5290)):
#0  0x00007f38d48d3e13 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007f38d7fb7087 in dht::RPCServerThread::run (this=0x7da670) at /usr/src/debug/libktorrent-1.0.1/src/dht/rpcserver.cpp:107
#2  0x00007f38d61e5bf5 in QThreadPrivate::start (arg=0x7da670) at thread/qthread_unix.cpp:248
#3  0x00007f38d5f57a4f in start_thread (arg=0x7f38ca5cc710) at pthread_create.c:297
#4  0x00007f38d48da82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f38b7e13710 (LWP 5536)):
#0  QMutex::lock (this=0x6d0088) at thread/qmutex.cpp:159
#1  0x00007f38d7f63e8d in net::DownloadThread::waitForSocketReady (this=0x6de140) at /usr/src/debug/libktorrent-1.0.1/src/net/downloadthread.cpp:110
#2  0x00007f38d7f640e6 in net::DownloadThread::update (this=0x6de140) at /usr/src/debug/libktorrent-1.0.1/src/net/downloadthread.cpp:48
#3  0x00007f38d7f642e9 in net::NetworkThread::run (this=0x6de140) at /usr/src/debug/libktorrent-1.0.1/src/net/networkthread.cpp:48
#4  0x00007f38d61e5bf5 in QThreadPrivate::start (arg=0x6de140) at thread/qthread_unix.cpp:248
#5  0x00007f38d5f57a4f in start_thread (arg=0x7f38b7e13710) at pthread_create.c:297
#6  0x00007f38d48da82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f38b8614710 (LWP 5537)):
#0  QMutex::lock (this=0x6d0088) at thread/qmutex.cpp:159
#1  0x00007f38d7f6395c in net::UploadThread::update (this=0x6de790) at /usr/src/debug/libktorrent-1.0.1/src/net/uploadthread.cpp:49
#2  0x00007f38d7f642e9 in net::NetworkThread::run (this=0x6de790) at /usr/src/debug/libktorrent-1.0.1/src/net/networkthread.cpp:48
#3  0x00007f38d61e5bf5 in QThreadPrivate::start (arg=0x6de790) at thread/qthread_unix.cpp:248
#4  0x00007f38d5f57a4f in start_thread (arg=0x7f38b8614710) at pthread_create.c:297
#5  0x00007f38d48da82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f38b7612710 (LWP 5538)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f38d61e62bb in wait (this=<value optimized out>, mutex=0x89b350, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x89b350, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007f38d7f66d62 in net::ReverseResolverThread::run (this=0x89b340) at /usr/src/debug/libktorrent-1.0.1/src/net/reverseresolver.cpp:123
#4  0x00007f38d61e5bf5 in QThreadPrivate::start (arg=0x89b340) at thread/qthread_unix.cpp:248
#5  0x00007f38d5f57a4f in start_thread (arg=0x7f38b7612710) at pthread_create.c:297
#6  0x00007f38d48da82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f38d8433760 (LWP 5286)):
[KCrash Handler]
#5  0x00007f38d62be986 in QAbstractEventDispatcherPrivate::releaseTimerId (timerId=<value optimized out>) at kernel/qabstracteventdispatcher.cpp:161
#6  0x00007f38d62f8a18 in QTimerInfoList::unregisterTimers (this=0x7e1140, object=0x14d97a00) at kernel/qeventdispatcher_unix.cpp:524
#7  0x00007f38d62e1def in QObject::~QObject (this=0x14d97a00, __in_chrg=<value optimized out>) at kernel/qobject.cpp:965
#8  0x00007f38d7fe66c9 in utp::Connection::~Connection (this=0x14d97a00, __in_chrg=<value optimized out>) at /usr/src/debug/libktorrent-1.0.1/src/utp/connection.cpp:91
#9  0x00007f38d7fe3d2a in utp::UTPServer::connectTo (this=0x7e86d0, addr=<value optimized out>) at /usr/src/debug/libktorrent-1.0.1/src/utp/utpserver.cpp:346
#10 0x00007f38d7fe9ee6 in utp::UTPSocket::connectTo (this=0x17cac670, addr=...) at /usr/src/debug/libktorrent-1.0.1/src/utp/utpsocket.cpp:85
#11 0x00007f38d7f691c5 in mse::StreamSocket::connectTo (this=<value optimized out>, addr=...) at /usr/src/debug/libktorrent-1.0.1/src/mse/streamsocket.cpp:210
#12 0x00007f38d7f6c14c in bt::Authenticate::Authenticate (this=0x18c0d820, ip=..., port=<value optimized out>, proto=bt::UTP, info_hash=<value optimized out>, peer_id=<value optimized out>, pcon=
    0x146c620) at /usr/src/debug/libktorrent-1.0.1/src/peer/authenticate.cpp:66
#13 0x00007f38d7f6984d in mse::EncryptedAuthenticate::EncryptedAuthenticate (this=0x18c0d820, ip=<value optimized out>, port=<value optimized out>, proto=<value optimized out>, 
    info_hash=<value optimized out>, peer_id=<value optimized out>, pcon=0x146c620) at /usr/src/debug/libktorrent-1.0.1/src/mse/encryptedauthenticate.cpp:46
#14 0x00007f38d7f7ed59 in bt::PeerConnector::start (this=0x146c620, method=<value optimized out>) at /usr/src/debug/libktorrent-1.0.1/src/peer/peerconnector.cpp:114
#15 0x00007f38d7f774df in bt::PeerManager::connectToPeers (this=0xb275f0) at /usr/src/debug/libktorrent-1.0.1/src/peer/peermanager.cpp:434
#16 0x00007f38d7fa2ee6 in bt::TorrentControl::update (this=0x847cd0) at /usr/src/debug/libktorrent-1.0.1/src/torrent/torrentcontrol.cpp:170
#17 0x000000000042b87b in kt::Core::update (this=0x7de1c0) at /usr/src/debug/ktorrent-4.0.1/ktorrent/core.cpp:1020
#18 0x0000000000432ee2 in kt::Core::qt_metacall (this=0x7de1c0, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0x7fff2afdc040) at /usr/src/debug/ktorrent-4.0.1/build/ktorrent/core.moc:167
#19 0x00007f38d62e0a1f in QMetaObject::activate (sender=0x7de1e8, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x0) at kernel/qobject.cpp:3295
#20 0x00007f38d62de22e in QObject::event (this=0x7de1e8, e=0x7fff2afdc7c0) at kernel/qobject.cpp:1212
#21 0x00007f38d54a14d4 in QApplicationPrivate::notify_helper (this=0x70a770, receiver=0x7de1e8, e=0x7fff2afdc7c0) at kernel/qapplication.cpp:4302
#22 0x00007f38d54a9aca in QApplication::notify (this=<value optimized out>, receiver=0x7de1e8, e=0x7fff2afdc7c0) at kernel/qapplication.cpp:4185
#23 0x00000000004393f1 in kt::App::notify (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at /usr/src/debug/ktorrent-4.0.1/ktorrent/app.cpp:97
#24 0x00007f38d62cce4c in QCoreApplication::notifyInternal (this=0x7fff2afdcbf0, receiver=0x7de1e8, event=0x7fff2afdc7c0) at kernel/qcoreapplication.cpp:726
#25 0x00007f38d62f80c9 in sendEvent (this=0x7129c0) at kernel/qcoreapplication.h:215
#26 QTimerInfoList::activateTimers (this=0x7129c0) at kernel/qeventdispatcher_unix.cpp:618
#27 0x00007f38d62f4ff8 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184
#28 idleTimerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:231
#29 0x00007f38d0603a93 in g_main_dispatch (context=0x711c00) at gmain.c:1960
#30 IA__g_main_context_dispatch (context=0x711c00) at gmain.c:2513
#31 0x00007f38d0604270 in g_main_context_iterate (context=0x711c00, block=1, dispatch=1, self=<value optimized out>) at gmain.c:2591
#32 0x00007f38d0604510 in IA__g_main_context_iteration (context=0x711c00, may_block=1) at gmain.c:2654
#33 0x00007f38d62f567f in QEventDispatcherGlib::processEvents (this=0x6dce30, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#34 0x00007f38d554214e in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#35 0x00007f38d62cc292 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#36 0x00007f38d62cc495 in QEventLoop::exec (this=0x7fff2afdcb50, flags=...) at kernel/qeventloop.cpp:201
#37 0x00007f38d62d088b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1003
#38 0x0000000000429086 in main (argc=3, argv=0x7fff2afdd9a8) at /usr/src/debug/ktorrent-4.0.1/ktorrent/main.cpp:176

Reported using DrKonqi
Comment 1 Joris Guisson 2010-07-11 12:07:50 UTC
Upgrade to 4.0.2 and libktorrent 1.0.2, it should be fixed in that release