Bug 227400 - Ktorrent crashes randomly when downloading
Summary: Ktorrent crashes randomly when downloading
Status: CLOSED FIXED
Alias: None
Product: ktorrent
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: Joris Guisson
URL:
Keywords:
: 230768 231758 232985 235055 235542 235702 235754 235873 236130 236273 237235 238323 238377 239065 240735 240923 241253 241628 241760 242947 243561 243650 243901 246320 248509 248686 250492 251738 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-02-17 17:32 UTC by Ivan
Modified: 2010-11-03 19:44 UTC (History)
27 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (7.70 KB, text/plain)
2010-06-08 04:17 UTC, rmbell
Details
New crash information added by DrKonqi (6.96 KB, text/plain)
2010-10-26 19:20 UTC, kernunos
Details
New crash information added by DrKonqi (8.76 KB, text/plain)
2010-11-03 19:44 UTC, Mathias Panzenböck
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan 2010-02-17 17:32:49 UTC
Application that crashed: ktorrent
Version of the application: 3.3.4
KDE Version: 4.3.4 (KDE 4.3.4)
Qt Version: 4.5.3
Operating System: Linux 2.6.32-trunk-amd64 x86_64
Distribution: Debian GNU/Linux 5.0.4 (lenny)

What I was doing when the application crashed:
Ktorrent just crashes at random intervals. I saw several bug reports with the same description, but I'm running the newest version and this crash still happens here.

 -- Backtrace:
Application: KTorrent (ktorrent), signal: Segmentation fault
The current source language is "auto; currently c".
[Current thread is 1 (Thread 0x7f71d0401750 (LWP 21604))]

Thread 5 (Thread 0x7f71c304e910 (LWP 21609)):
#0  0x00007f71cc36df82 in select () from /lib/libc.so.6
#1  0x00007f71cff8b159 in dht::RPCServerThread::run (this=0x15db540) at ../../libbtcore/dht/rpcserver.cpp:107
#2  0x00007f71cda1e4a5 in QThreadPrivate::start (arg=0x15db540) at thread/qthread_unix.cpp:188
#3  0x00007f71c94ec73a in start_thread (arg=<value optimized out>) at pthread_create.c:300
#4  0x00007f71cc37469d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f71abe39910 (LWP 21645)):
#0  net::DownloadThread::waitForSocketReady (this=0x14496d0) at ../../libbtcore/net/downloadthread.cpp:157
#1  0x00007f71cff32626 in net::DownloadThread::update (this=0x7f71d01fca80) at ../../libbtcore/net/downloadthread.cpp:53
#2  0x00007f71cff32fd9 in net::NetworkThread::run (this=0x14496d0) at ../../libbtcore/net/networkthread.cpp:48
#3  0x00007f71cda1e4a5 in QThreadPrivate::start (arg=0x14496d0) at thread/qthread_unix.cpp:188
#4  0x00007f71c94ec73a in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007f71cc37469d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f71ab638910 (LWP 21646)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f71cda1f499 in QWaitConditionPrivate::wait (this=0x144a098, mutex=0x144a0a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=0x144a098, mutex=0x144a0a0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007f71cff31eec in net::UploadThread::update (this=0x144a030) at ../../libbtcore/net/uploadthread.cpp:73
#4  0x00007f71cff32fd9 in net::NetworkThread::run (this=0x144a030) at ../../libbtcore/net/networkthread.cpp:48
#5  0x00007f71cda1e4a5 in QThreadPrivate::start (arg=0x144a030) at thread/qthread_unix.cpp:188
#6  0x00007f71c94ec73a in start_thread (arg=<value optimized out>) at pthread_create.c:300
#7  0x00007f71cc37469d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#8  0x0000000000000000 in ?? ()
The current source language is "auto; currently c++".

Thread 2 (Thread 0x7f71aae37910 (LWP 21647)):
#0  0x00007f71cc369743 in *__GI___poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=5000) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f71afdf38e2 in send_dg (statp=0x7f71aae37dc8, buf=<value optimized out>, buflen=<value optimized out>, buf2=0x0, buflen2=<value optimized out>, ans=0x7f71aae35dd0 "\235p\201\200", 
    anssiz=1024, ansp=0x7f71aae36650, ansp2=0x0, nansp2=0x0, resplen2=0x0) at res_send.c:1062
#2  __libc_res_nsend (statp=0x7f71aae37dc8, buf=<value optimized out>, buflen=<value optimized out>, buf2=0x0, buflen2=<value optimized out>, ans=0x7f71aae35dd0 "\235p\201\200", anssiz=1024, 
    ansp=0x7f71aae36650, ansp2=0x0, nansp2=0x0, resplen2=0x0) at res_send.c:553
#3  0x00007f71afdf1a15 in *__GI___libc_res_nquery (statp=0x7f71aae37dc8, name=<value optimized out>, class=<value optimized out>, type=<value optimized out>, answer=0x7f71aae35dd0 "\235p\201\200", 
    anslen=<value optimized out>, answerp=0x7f71aae36650, answerp2=0x0, nanswerp2=0x0, resplen2=0x0) at res_query.c:225
#4  0x00007f71bf9f125c in *__GI__nss_dns_gethostbyaddr2_r (addr=<value optimized out>, len=<value optimized out>, af=2, result=<value optimized out>, buffer=<value optimized out>, 
    buflen=<value optimized out>, errnop=0x7f71aae37898, h_errnop=0x7f71aae36ddc, ttlp=0x0) at nss_dns/dns-host.c:465
#5  0x00007f71bf9f15b5 in _nss_dns_gethostbyaddr_r (addr=0x7f71aae35b50, len=1, af=5000, result=0xffffffffffffffff, buffer=0x0, buflen=0, errnop=0x7f71aae37898, h_errnop=0x7f71aae36ddc)
    at nss_dns/dns-host.c:524
#6  0x00007f71cc38ac28 in __gethostbyaddr_r (addr=0x24e5104, len=4, type=<value optimized out>, resbuf=0x7f71aae36da0, buffer=<value optimized out>, buflen=<value optimized out>, 
    result=0x7f71aae36dd0, h_errnop=0x7f71aae36ddc) at ../nss/getXXbyYY_r.c:253
#7  0x00007f71cc39044d in *__GI_getnameinfo (sa=0x24e5100, addrlen=<value optimized out>, host=0x7f71aae36f00 "", hostlen=199, serv=0x7f71aae36e30 "", servlen=199, flags=<value optimized out>)
    at getnameinfo.c:223
#8  0x00007f71cff3568c in net::ReverseResolver::resolve (this=<value optimized out>, addr=...) at ../../libbtcore/net/reverseresolver.cpp:64
#9  0x00007f71cff35710 in net::ReverseResolver::run (this=0x2b39610) at ../../libbtcore/net/reverseresolver.cpp:73
#10 0x00007f71cff35807 in net::ReverseResolverThread::run (this=0x1600420) at ../../libbtcore/net/reverseresolver.cpp:118
#11 0x00007f71cda1e4a5 in QThreadPrivate::start (arg=0x1600420) at thread/qthread_unix.cpp:188
#12 0x00007f71c94ec73a in start_thread (arg=<value optimized out>) at pthread_create.c:300
#13 0x00007f71cc37469d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#14 0x0000000000000000 in ?? ()
The current source language is "auto; currently asm".

Thread 1 (Thread 0x7f71d0401750 (LWP 21604)):
[KCrash Handler]
#5  memcpy () at ../sysdeps/x86_64/memcpy.S:267
#6  0x00007f71cbdabab4 in QCA::MemoryRegion::MemoryRegion(QByteArray const&) () from /usr/lib/libqca.so.2
#7  0x00007f71cbdc3445 in QCA::Hash::update(QByteArray const&) () from /usr/lib/libqca.so.2
#8  0x00007f71cff1d9cb in bt::SHA1HashGen::update (this=0x201c8b0, data=0x7f71c111b000 "x\360\332\372\023\"FKH\017\006\002\271", len=16384) at ../../libbtcore/util/sha1hashgen.cpp:240
#9  0x00007f71cff501b2 in bt::ChunkDownload::updateHash (this=0x201c7f0) at ../../libbtcore/download/chunkdownload.cpp:579
#10 0x00007f71cff51019 in bt::ChunkDownload::piece (this=0x201c7f0, p=..., ok=<value optimized out>) at ../../libbtcore/download/chunkdownload.cpp:145
#11 0x00007f71cff57ade in bt::Downloader::pieceReceived (this=0x190ea30, p=...) at ../../libbtcore/download/downloader.cpp:126
#12 0x00007f71cff3fab1 in bt::Peer::packetReady (this=0x26d5430, packet=0x269a890 "\a", len=<value optimized out>) at ../../libbtcore/peer/peer.cpp:268
#13 0x00007f71cff48de8 in bt::PacketReader::update (this=0x25951c0) at ../../libbtcore/peer/packetreader.cpp:141
#14 0x00007f71cff3f805 in bt::Peer::update (this=0x26d5430) at ../../libbtcore/peer/peer.cpp:462
#15 0x00007f71cff434b0 in bt::PeerManager::update (this=0x190ccc0) at ../../libbtcore/peer/peermanager.cpp:119
#16 0x00007f71cff70d5a in bt::TorrentControl::update (this=0x18fb310) at ../../libbtcore/torrent/torrentcontrol.cpp:150
#17 0x0000000000430dab in kt::Core::update (this=0x15cc8b0) at ../../ktorrent/core.cpp:849
#18 0x0000000000437046 in kt::Core::qt_metacall (this=0x15cc8b0, _c=QMetaObject::InvokeMetaMethod, _id=45703960, _a=0x7fff4f36b430) at ./core.moc:149
#19 0x00007f71cdb18df2 in QMetaObject::activate (sender=0x15cc8d8, from_signal_index=<value optimized out>, to_signal_index=4, argv=0x600) at kernel/qobject.cpp:3112
#20 0x00007f71cdb13353 in QObject::event (this=0x15cc8d8, e=0x7f71c111c000) at kernel/qobject.cpp:1074
#21 0x00007f71ccf7d01d in QApplicationPrivate::notify_helper (this=0x147f9f0, receiver=0x15cc8d8, e=0x7fff4f36bae0) at kernel/qapplication.cpp:4065
#22 0x00007f71ccf8507a in QApplication::notify (this=0x7fff4f36be20, receiver=0x15cc8d8, e=0x7fff4f36bae0) at kernel/qapplication.cpp:4030
#23 0x00007f71cf0f2e46 in KApplication::notify (this=0x7fff4f36be20, receiver=0x15cc8d8, event=0x7fff4f36bae0) at ../../kdeui/kernel/kapplication.cpp:302
#24 0x00007f71cdb03c9c in QCoreApplication::notifyInternal (this=0x7fff4f36be20, receiver=0x15cc8d8, event=0x7fff4f36bae0) at kernel/qcoreapplication.cpp:610
#25 0x00007f71cdb302c6 in QCoreApplication::sendEvent (this=0x1477a70) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
#26 QTimerInfoList::activateTimers (this=0x1477a70) at kernel/qeventdispatcher_unix.cpp:580
#27 0x00007f71cdb2c658 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 0x00007f71c8a1d90e in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#30 0x00007f71c8a212c8 in ?? () from /lib/libglib-2.0.so.0
#31 0x00007f71c8a213f0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#32 0x00007f71cdb2c39c in QEventDispatcherGlib::processEvents (this=0x1446710, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:407
#33 0x00007f71cd013f1f in QGuiEventDispatcherGlib::processEvents (this=0x2b97318, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202
#34 0x00007f71cdb02562 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#35 0x00007f71cdb02934 in QEventLoop::exec (this=0x7fff4f36bd90, flags=...) at kernel/qeventloop.cpp:201
#36 0x00007f71cdb04ba4 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#37 0x0000000000426f34 in main (argc=<value optimized out>, argv=<value optimized out>) at ../../ktorrent/main.cpp:172
The current source language is "auto; currently c".

Reported using DrKonqi
Comment 1 Joris Guisson 2010-02-26 19:53:02 UTC
SVN commit 1096493 by guisson:

Fix SHA1 hash generation crashes by using shared pointers to PieceData 

BUG: 227400

 M  +1 -0      ChangeLog  
 M  +3 -2      libbtcore/diskio/cache.cpp  
 M  +6 -5      libbtcore/diskio/cache.h  
 M  +4 -4      libbtcore/diskio/chunk.cpp  
 M  +3 -2      libbtcore/diskio/chunk.h  
 M  +6 -20     libbtcore/diskio/multifilecache.cpp  
 M  +3 -3      libbtcore/diskio/multifilecache.h  
 M  +34 -0     libbtcore/diskio/piecedata.cpp  
 M  +24 -4     libbtcore/diskio/piecedata.h  
 M  +8 -14     libbtcore/diskio/singlefilecache.cpp  
 M  +4 -4      libbtcore/diskio/singlefilecache.h  
 M  +6 -32     libbtcore/download/chunkdownload.cpp  
 M  +2 -1      libbtcore/download/chunkdownload.h  
 M  +1 -2      libbtcore/download/downloader.cpp  
 M  +5 -7      libbtcore/download/webseed.cpp  
 M  +2 -0      libbtcore/download/webseed.h  
 M  +1 -1      libbtcore/mse/streamsocket.h  
 M  +1 -1      libbtcore/net/downloadthread.cpp  
 M  +1 -1      libbtcore/net/poll.cpp  
 M  +1 -1      libbtcore/net/uploadthread.cpp  
 M  +8 -1      libbtcore/utp/utpserver.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1096493
Comment 2 Joris Guisson 2010-03-14 22:22:38 UTC
*** Bug 230768 has been marked as a duplicate of this bug. ***
Comment 3 Joris Guisson 2010-03-22 18:04:26 UTC
*** Bug 231758 has been marked as a duplicate of this bug. ***
Comment 4 Joris Guisson 2010-04-01 18:21:48 UTC
*** Bug 232985 has been marked as a duplicate of this bug. ***
Comment 5 Joris Guisson 2010-04-22 17:49:25 UTC
*** Bug 235055 has been marked as a duplicate of this bug. ***
Comment 6 Joris Guisson 2010-04-27 17:46:52 UTC
*** Bug 235542 has been marked as a duplicate of this bug. ***
Comment 7 Joris Guisson 2010-04-29 17:55:31 UTC
*** Bug 235702 has been marked as a duplicate of this bug. ***
Comment 8 Joris Guisson 2010-04-30 17:56:43 UTC
*** Bug 235754 has been marked as a duplicate of this bug. ***
Comment 9 Joris Guisson 2010-05-01 10:11:11 UTC
*** Bug 235873 has been marked as a duplicate of this bug. ***
Comment 10 Filipe 2010-05-02 02:25:49 UTC
Thanks for the fix =)
Comment 11 Joris Guisson 2010-05-03 17:42:22 UTC
*** Bug 236130 has been marked as a duplicate of this bug. ***
Comment 12 Joris Guisson 2010-05-04 18:52:40 UTC
*** Bug 236273 has been marked as a duplicate of this bug. ***
Comment 13 Joris Guisson 2010-05-12 19:09:44 UTC
*** Bug 237235 has been marked as a duplicate of this bug. ***
Comment 14 Joris Guisson 2010-05-22 10:44:17 UTC
*** Bug 238323 has been marked as a duplicate of this bug. ***
Comment 15 Joris Guisson 2010-05-22 10:44:53 UTC
*** Bug 238377 has been marked as a duplicate of this bug. ***
Comment 16 Joris Guisson 2010-05-28 19:16:03 UTC
*** Bug 239065 has been marked as a duplicate of this bug. ***
Comment 17 Joris Guisson 2010-06-04 18:59:30 UTC
*** Bug 240735 has been marked as a duplicate of this bug. ***
Comment 18 Joris Guisson 2010-06-07 08:13:30 UTC
*** Bug 240923 has been marked as a duplicate of this bug. ***
Comment 19 rmbell 2010-06-08 04:17:10 UTC
Created attachment 47803 [details]
New crash information added by DrKonqi

Random crash when I came back from a coffee.
Comment 20 Joris Guisson 2010-06-10 08:27:37 UTC
*** Bug 241253 has been marked as a duplicate of this bug. ***
Comment 21 Joris Guisson 2010-06-13 11:31:23 UTC
*** Bug 241628 has been marked as a duplicate of this bug. ***
Comment 22 Joris Guisson 2010-06-14 20:11:35 UTC
*** Bug 241760 has been marked as a duplicate of this bug. ***
Comment 23 Joris Guisson 2010-06-29 20:04:27 UTC
*** Bug 242947 has been marked as a duplicate of this bug. ***
Comment 24 Joris Guisson 2010-07-04 11:01:23 UTC
*** Bug 243561 has been marked as a duplicate of this bug. ***
Comment 25 Joris Guisson 2010-07-05 14:52:46 UTC
*** Bug 243650 has been marked as a duplicate of this bug. ***
Comment 26 Joris Guisson 2010-07-08 07:59:34 UTC
*** Bug 243901 has been marked as a duplicate of this bug. ***
Comment 27 Joris Guisson 2010-07-31 10:48:17 UTC
*** Bug 246320 has been marked as a duplicate of this bug. ***
Comment 28 Joris Guisson 2010-08-20 17:59:19 UTC
*** Bug 248509 has been marked as a duplicate of this bug. ***
Comment 29 Joris Guisson 2010-08-22 14:08:57 UTC
*** Bug 248686 has been marked as a duplicate of this bug. ***
Comment 30 Joris Guisson 2010-09-08 18:13:29 UTC
*** Bug 250492 has been marked as a duplicate of this bug. ***
Comment 31 Joris Guisson 2010-09-19 19:47:33 UTC
*** Bug 251738 has been marked as a duplicate of this bug. ***
Comment 32 kernunos 2010-10-26 19:20:52 UTC
Created attachment 52888 [details]
New crash information added by DrKonqi

ktorrent (4.0.3) on KDE Platform 4.5.1 (KDE 4.5.1) using Qt 4.7.0

- What I was doing when the application crashed: websurfing just after update of my Ubuntu distribution up to 10.10

-- Backtrace (Reduced):
#8  0xb7613562 in bt::ChunkDownload::piece (this=0xd279330, p=..., ok=@0xbfa5634f) at //usr/include/bits/string3.h:52
#9  0xb761a219 in bt::Downloader::pieceReceived (this=0xcd9b378, p=...) at ../../src/download/downloader.cpp:134
#10 0xb75fdbef in bt::PeerManager::pieceReceived (this=0xcd95700, p=...) at ../../src/peer/peermanager.cpp:674
#11 0xb75fb9da in bt::Peer::packetReady (this=0xce89928, packet=0xd1734b0 "\a", len=16393) at ../../src/peer/peer.cpp:283
#12 0xb7607489 in bt::PacketReader::update (this=0xcf19078) at ../../src/peer/packetreader.cpp:141
Comment 33 Mathias Panzenböck 2010-11-03 19:44:17 UTC
Created attachment 53105 [details]
New crash information added by DrKonqi

Ktorrent crashed 1 minute after I left home after I started the download of the Fedora 14 KDE Spin ISO. So it did the whole day nothing. :(