https://bugs.kde.org/show_bug.cgi?id=357461
Bug ID: 357461 Summary: KTorrent crashes on adding multiple magnet links Product: ktorrent Version: 4.3.1 Platform: Fedora RPMs OS: Linux Status: UNCONFIRMED Keywords: drkonqi Severity: crash Priority: NOR Component: general Assignee: joris.guis...@gmail.com Reporter: sud...@sudhirkhanger.com Application: ktorrent (4.3.1) KDE Platform Version: 4.14.14 Qt Version: 4.8.7 Operating System: Linux 4.2.8-300.fc23.x86_64 x86_64 Distribution: "Fedora release 23 (Twenty Three)" -- Information about the crash: - What I was doing when the application crashed: If you add multiple magnet links to KTorrent, it either starts eating 100% cpu resources or segfaults. The crash can be reproduced sometimes. -- Backtrace: Application: KTorrent (ktorrent), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". 35 return INLINE_SYSCALL (stat, 2, name, buf); [Current thread is 1 (Thread 0x7f6695efb900 (LWP 3715))] Thread 4 (Thread 0x7f666eba2700 (LWP 3760)): [KCrash Handler] #6 0x00007f6695a9a430 in net::Speed::onData(unsigned int, unsigned long long) () from /lib64/libktorrent.so.5 #7 0x00007f6695a9fa00 in net::TrafficShapedSocket::read(unsigned int, unsigned long long) () from /lib64/libktorrent.so.5 #8 0x00007f6695a9c503 in net::SocketGroup::processLimited(bool, unsigned long long, unsigned int&) () from /lib64/libktorrent.so.5 #9 0x00007f6695a9c740 in net::SocketGroup::process(bool, unsigned long long, unsigned int&) () from /lib64/libktorrent.so.5 #10 0x00007f6695a9b617 in net::NetworkThread::doGroupsLimited(unsigned int, unsigned long long, unsigned int&) () from /lib64/libktorrent.so.5 #11 0x00007f6695a9b846 in net::NetworkThread::doGroups(unsigned int, unsigned long long, unsigned int) () from /lib64/libktorrent.so.5 #12 0x00007f6695a9b391 in net::DownloadThread::update() () from /lib64/libktorrent.so.5 #13 0x00007f6695a9b3c9 in net::NetworkThread::run() () from /lib64/libktorrent.so.5 #14 0x00007f669213d37c in QThreadPrivate::start (arg=0x5603fa68caf0) at thread/qthread_unix.cpp:352 #15 0x00007f66937c660a in start_thread (arg=0x7f666eba2700) at pthread_create.c:334 #16 0x00007f6691557a9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 3 (Thread 0x7f666e3a1700 (LWP 3761)): #0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38 #1 0x00007f669213bbb2 in _q_futex (val2=0, addr2=0x0, timeout=0x0, val=2, op=0, addr=0x5603fa68cac0) at thread/qmutex_unix.cpp:99 #2 QMutexPrivate::wait (this=this@entry=0x5603fa68cac0, timeout=timeout@entry=-1) at thread/qmutex_unix.cpp:113 #3 0x00007f6692137fad in QMutex::lock (this=<optimized out>) at thread/qmutex.cpp:164 #4 0x00007f6695a9a84a in net::UploadThread::waitForSocketsReady() () from /lib64/libktorrent.so.5 #5 0x00007f6695a9ab06 in net::UploadThread::update() () from /lib64/libktorrent.so.5 #6 0x00007f6695a9b3c9 in net::NetworkThread::run() () from /lib64/libktorrent.so.5 #7 0x00007f669213d37c in QThreadPrivate::start (arg=0x5603fa68cee0) at thread/qthread_unix.cpp:352 #8 0x00007f66937c660a in start_thread (arg=0x7f666e3a1700) at pthread_create.c:334 #9 0x00007f6691557a9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 2 (Thread 0x7f666dba0700 (LWP 3762)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f669213d8e6 in QWaitConditionPrivate::wait (time=18446744073709551615, this=0x5603faf72680) at thread/qwaitcondition_unix.cpp:86 #2 QWaitCondition::wait (this=<optimized out>, mutex=0x5603faf5cab0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158 #3 0x00007f6695a9dcb2 in net::ReverseResolverThread::run() () from /lib64/libktorrent.so.5 #4 0x00007f669213d37c in QThreadPrivate::start (arg=0x5603faf5caa0) at thread/qthread_unix.cpp:352 #5 0x00007f66937c660a in start_thread (arg=0x7f666dba0700) at pthread_create.c:334 #6 0x00007f6691557a9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 1 (Thread 0x7f6695efb900 (LWP 3715)): #0 0x00007f6691547505 in __GI___xstat (vers=<optimized out>, name=0x7f66915dd50c "/etc/localtime", buf=0x7ffea5bd4de0) at ../sysdeps/unix/sysv/linux/wordsize-64/xstat.c:35 #1 0x00007f669150f88e in __tzfile_read (file=file@entry=0x7f66915dd50c "/etc/localtime", extra=extra@entry=0, extrap=extrap@entry=0x0) at tzfile.c:161 #2 0x00007f669150f259 in tzset_internal (explicit=1, always=1) at tzset.c:443 #3 __tzset () at tzset.c:596 #4 0x00007f669214ce26 in QDateTime::currentDateTime () at tools/qdatetime.cpp:3106 #5 0x00007f6695a895ab in bt::endl(bt::Log&) () from /lib64/libktorrent.so.5 #6 0x00007f6695b435c0 in bt::MetadataDownload::download(unsigned int) () from /lib64/libktorrent.so.5 #7 0x00007f6695b43893 in bt::MetadataDownload::downloadNext() () from /lib64/libktorrent.so.5 #8 0x00007f6695b43960 in bt::MetadataDownload::reject(unsigned int) () from /lib64/libktorrent.so.5 #9 0x00007f6695abf62e in bt::UTMetaData::reject(bt::BDictNode*) () from /lib64/libktorrent.so.5 #10 0x00007f6695abfed3 in bt::UTMetaData::handlePacket(unsigned char const*, unsigned int) () from /lib64/libktorrent.so.5 #11 0x00007f6695abd78d in bt::PacketReader::update(bt::PeerInterface&) () from /lib64/libktorrent.so.5 #12 0x00007f6695ab16d8 in bt::Peer::update() () from /lib64/libktorrent.so.5 #13 0x00007f6695ab9499 in bt::PeerManager::Private::update() () from /lib64/libktorrent.so.5 #14 0x00005603f9111f58 in kt::MagnetModel::updateMagnetDownloaders() () #15 0x00005603f90ee49e in kt::Core::update() () #16 0x00005603f90f72cd in kt::Core::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () #17 0x00007f6692260a80 in QMetaObject::activate (sender=0x5603fa8012a8, m=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3567 #18 0x00007f66922666f3 in QObject::event (this=0x5603fa8012a8, e=<optimized out>) at kernel/qobject.cpp:1253 #19 0x00007f66927ba93c in QApplicationPrivate::notify_helper (this=this@entry=0x5603fa6c71f0, receiver=receiver@entry=0x5603fa8012a8, e=e@entry=0x7ffea5bd5820) at kernel/qapplication.cpp:4565 #20 0x00007f66927c1796 in QApplication::notify (this=0x7ffea5bd67d0, receiver=0x5603fa8012a8, e=0x7ffea5bd5820) at kernel/qapplication.cpp:4351 #21 0x00005603f90fe6d1 in kt::App::notify(QObject*, QEvent*) () #22 0x00007f669224c8dd in QCoreApplication::notifyInternal (this=0x7ffea5bd67d0, receiver=0x5603fa8012a8, event=event@entry=0x7ffea5bd5820) at kernel/qcoreapplication.cpp:955 #23 0x00007f669227f360 in QCoreApplication::sendEvent (event=0x7ffea5bd5820, receiver=<optimized out>) at kernel/qcoreapplication.h:231 #24 QTimerInfoList::activateTimers (this=0x5603fa6ce550) at kernel/qeventdispatcher_unix.cpp:621 #25 0x00007f669227c509 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:193 #26 idleTimerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:240 #27 0x00007f668ac1ee3a in g_main_dispatch (context=0x5603fa6c7590) at gmain.c:3154 #28 g_main_context_dispatch (context=context@entry=0x5603fa6c7590) at gmain.c:3769 #29 0x00007f668ac1f1d0 in g_main_context_iterate (context=context@entry=0x5603fa6c7590, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840 #30 0x00007f668ac1f27c in g_main_context_iteration (context=0x5603fa6c7590, may_block=may_block@entry=1) at gmain.c:3901 #31 0x00007f669227ce8e in QEventDispatcherGlib::processEvents (this=0x5603fa6839d0, flags=...) at kernel/qeventdispatcher_glib.cpp:450 #32 0x00007f66928633e6 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:207 #33 0x00007f669224b151 in QEventLoop::processEvents (this=this@entry=0x7ffea5bd5aa0, flags=...) at kernel/qeventloop.cpp:149 #34 0x00007f669224b4c5 in QEventLoop::exec (this=this@entry=0x7ffea5bd5aa0, flags=...) at kernel/qeventloop.cpp:204 #35 0x00007f6692251069 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1227 #36 0x00005603f90e8f05 in main () Reported using DrKonqi -- You are receiving this mail because: You are watching all bug changes.