Bug 479146

Summary: crash under heavy io load
Product: [Fedora] Fedora Reporter: Juha Tuomala <tuju>
Component: ktorrentAssignee: Roland Wolters <roland.wolters>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 9CC: kevin, rdieter, roland.wolters, smparrish, than
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-06-10 07:04:02 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Juha Tuomala 2009-01-07 15:41:15 UTC
Description of problem:
when disk is busy with other processes, ktorrent crashes to qt error.	

Version-Release number of selected component (if applicable):
ktorrent-3.1.5-1.fc9.x86_64

How reproducible:
somewhat always.

Steps to Reproduce:
1. run ktorrent
2. generate other io-traffic into same disk

  
Actual results:
Application: KTorrent (ktorrent), signal SIGSEGV
[Thread debugging using libthread_db enabled]
[New Thread 0x7ff745050800 (LWP 8862)]
[New Thread 0x43bfd950 (LWP 8956)]
[New Thread 0x427fb950 (LWP 8955)]
[KCrash handler]
#5  QSortFilterProxyModel::parent (this=<value optimized out>, 
    child=<value optimized out>)
    at ../../src/corelib/kernel/qabstractitemmodel.h:60
#6  0x00000035e382a3f0 in QTreeView::indexRowSizeHint (
    this=<value optimized out>, index=<value optimized out>)
    at ../../src/corelib/kernel/qabstractitemmodel.h:358
#7  0x00000035e382aab5 in QTreeViewPrivate::itemHeight (
    this=<value optimized out>, item=<value optimized out>)
    at itemviews/qtreeview.cpp:3112
#8  0x00000035e382fae5 in QTreeView::verticalOffset (
    this=<value optimized out>) at itemviews/qtreeview.cpp:2006
#9  0x00000035e37fb37e in QAbstractItemViewPrivate::contentsOffset (
    this=<value optimized out>)
    at ../../src/gui/itemviews/qabstractitemview_p.h:256
#10 0x00000035e33d3c5f in QWidgetPrivate::drawWidget (
    this=<value optimized out>, pdev=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, 
    flags=<value optimized out>, sharedPainter=<value optimized out>)
    at kernel/qwidget.cpp:4612
#11 0x00000035e33d4012 in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4735
#12 0x00000035e33d3f3b in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4725
#13 0x00000035e33d3f3b in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4725
#14 0x00000035e33d3f3b in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4725
#15 0x00000035e33d35e8 in QWidgetPrivate::drawWidget (
    this=<value optimized out>, pdev=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, 
    flags=<value optimized out>, sharedPainter=<value optimized out>)
    at kernel/qwidget.cpp:4677
#16 0x00000035e33d4012 in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4735
#17 0x00000035e33d35e8 in QWidgetPrivate::drawWidget (
    this=<value optimized out>, pdev=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, 
    flags=<value optimized out>, sharedPainter=<value optimized out>)
    at kernel/qwidget.cpp:4677
#18 0x00000035e33d4012 in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4735
#19 0x00000035e33d3f3b in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4725
#20 0x00000035e33d35e8 in QWidgetPrivate::drawWidget (
    this=<value optimized out>, pdev=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, 
    flags=<value optimized out>, sharedPainter=<value optimized out>)
    at kernel/qwidget.cpp:4677
#21 0x00000035e33d4012 in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4735
#22 0x00000035e33d35e8 in QWidgetPrivate::drawWidget (
    this=<value optimized out>, pdev=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, 
    flags=<value optimized out>, sharedPainter=<value optimized out>)
    at kernel/qwidget.cpp:4677
#23 0x00000035e33d4012 in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4735
#24 0x00000035e33d35e8 in QWidgetPrivate::drawWidget (
    this=<value optimized out>, pdev=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, 
    flags=<value optimized out>, sharedPainter=<value optimized out>)
    at kernel/qwidget.cpp:4677
#25 0x00000035e33d4012 in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4735
#26 0x00000035e33d3f3b in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4725
#27 0x00000035e33d3f3b in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4725
#28 0x00000035e33d35e8 in QWidgetPrivate::drawWidget (
    this=<value optimized out>, pdev=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, 
    flags=<value optimized out>, sharedPainter=<value optimized out>)
    at kernel/qwidget.cpp:4677
#29 0x00000035e33d4012 in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4735
#30 0x00000035e33d35e8 in QWidgetPrivate::drawWidget (
    this=<value optimized out>, pdev=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, 
    flags=<value optimized out>, sharedPainter=<value optimized out>)
    at kernel/qwidget.cpp:4677
#31 0x00000035e33d4012 in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4735
#32 0x00000035e33d3f3b in QWidgetPrivate::paintSiblingsRecursive (
    this=<value optimized out>, pdev=<value optimized out>, 
    siblings=<value optimized out>, index=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, flags=)
    at kernel/qwidget.cpp:4725
#33 0x00000035e33d35e8 in QWidgetPrivate::drawWidget (
    this=<value optimized out>, pdev=<value optimized out>, 
    rgn=<value optimized out>, offset=<value optimized out>, 
    flags=<value optimized out>, sharedPainter=<value optimized out>)
    at kernel/qwidget.cpp:4677
#34 0x00000035e352c654 in QWidgetBackingStore::cleanRegion (
    this=<value optimized out>, rgn=<value optimized out>, 
    widget=<value optimized out>, recursiveCopyToScreen=<value optimized out>)
    at painting/qbackingstore.cpp:1039
#35 0x00000035e352cb07 in qt_syncBackingStore (widget=<value optimized out>)
    at painting/qbackingstore.cpp:313
#36 0x00000035e33d4d15 in QWidget::event (this=<value optimized out>, 
    event=<value optimized out>) at kernel/qwidget.cpp:7447
#37 0x00000035e36ed4db in QMainWindow::event (this=<value optimized out>, 
    event=<value optimized out>) at widgets/qmainwindow.cpp:1268
#38 0x00000035e40e78c8 in KXmlGuiWindow::event (this=<value optimized out>, 
    ev=<value optimized out>)
    at /usr/src/debug/kdelibs-4.1.3/kdeui/xmlgui/kxmlguiwindow.cpp:133
#39 0x00000035e33827dd in QApplicationPrivate::notify_helper (
    this=<value optimized out>, receiver=<value optimized out>, 
    e=<value optimized out>) at kernel/qapplication.cpp:3803
#40 0x00000035e338a58a in QApplication::notify (this=<value optimized out>, 
    receiver=<value optimized out>, e=<value optimized out>)
    at kernel/qapplication.cpp:3768
#41 0x00000035e3ffb98b in KApplication::notify (this=<value optimized out>, 
    receiver=<value optimized out>, event=<value optimized out>)
    at /usr/src/debug/kdelibs-4.1.3/kdeui/kernel/kapplication.cpp:311
#42 0x0000003aee943081 in QCoreApplication::notifyInternal (
    this=<value optimized out>, receiver=<value optimized out>, 
    event=<value optimized out>) at kernel/qcoreapplication.cpp:587
#43 0x0000003aee943d2a in QCoreApplicationPrivate::sendPostedEvents (
    receiver=<value optimized out>, event_type=<value optimized out>, 
    data=<value optimized out>)
    at ../../src/corelib/kernel/qcoreapplication.h:209
#44 0x0000003aee96b8e3 in postEventSourceDispatch (s=<value optimized out>)
    at ../../src/corelib/kernel/qcoreapplication.h:214
#45 0x00000035c7e3742b in IA__g_main_context_dispatch (
    context=<value optimized out>) at gmain.c:2012
#46 0x00000035c7e3ac0d in g_main_context_iterate (
    context=<value optimized out>, block=<value optimized out>, 
    dispatch=<value optimized out>, self=<value optimized out>)
    at gmain.c:2645
#47 0x00000035c7e3adcb in IA__g_main_context_iteration (
    context=<value optimized out>, may_block=<value optimized out>)
    at gmain.c:2708
#48 0x0000003aee96b56f in QEventDispatcherGlib::processEvents (
    this=<value optimized out>, flags=<value optimized out>)
    at kernel/qeventdispatcher_glib.cpp:319
#49 0x00000035e341350f in QGuiEventDispatcherGlib::processEvents (
    this=<value optimized out>, flags=<value optimized out>)
    at kernel/qguieventdispatcher_glib.cpp:198
#50 0x0000003aee941992 in QEventLoop::processEvents (
    this=<value optimized out>, flags=<value optimized out>)
    at kernel/qeventloop.cpp:143
#51 0x0000003aee941b1d in QEventLoop::exec (this=<value optimized out>, 
    flags=<value optimized out>) at kernel/qeventloop.cpp:194
#52 0x0000003aee943fed in QCoreApplication::exec ()
    at kernel/qcoreapplication.cpp:845
#53 0x0000000000420f5b in main (argc=5, argv=0x7fff4d099668)
    at /usr/src/debug/ktorrent-3.1.5/ktorrent/main.cpp:166
Current language:  auto; currently asm
Current language:  auto; currently c

Comment 1 Rex Dieter 2009-01-07 15:46:01 UTC
I'd suggest reporting to upstream,
http://ktorrent.org/forum/viewforum.php?f=1&sid=ddd98bd09faf797c3cf5398cfdf592a3
(though it's a forum, for better or worse).

Comment 2 Juha Tuomala 2009-01-07 15:51:01 UTC
I think i've reported that many times to kde.org and imo it's qt bug, falls into our laps anyway.

Comment 3 Roland Wolters 2009-01-07 20:25:08 UTC
Juha, can you please report this bug upstream and provide us the link here?

Comment 5 Roland Wolters 2009-01-08 23:01:48 UTC
According to
http://bugs.kde.org/show_bug.cgi?id=163631
this is not a ktorrent problem but a Qt problem, re-assigning.

Comment 6 Kevin Kofler 2009-01-08 23:23:43 UTC
That's not the same bug as this one, the backtrace is completely different.

Comment 7 Kevin Kofler 2009-01-08 23:26:53 UTC
The bug here looks like:
http://bugs.kde.org/show_bug.cgi?id=172198

They claim it's fixed in 3.1.5, but it apparently isn't.

Comment 8 Roland Wolters 2009-01-11 01:58:53 UTC
Kevin, you're right, that bug looks much more alike. I reƤassigned - again - and added this the KDE bug as an external bug reference.

Comment 9 Steven M. Parrish 2009-06-07 23:40:03 UTC
Is this still an issue with the newest release?  If so please reassign to either F10 or F11 depending on which release the problem still exists.

-- 
Steven M. Parrish - KDE Triage Master
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 10 Bug Zapper 2009-06-10 03:28:30 UTC
This message is a reminder that Fedora 9 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 9.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '9'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 9's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 9 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 11 Kevin Kofler 2009-06-10 05:55:09 UTC
Upstream claims this is fixed. Can you still reproduce it?

Comment 12 Juha Tuomala 2009-06-10 06:39:05 UTC
I don't think it happens anymore, we have now other crashes.