Bug 262738 - kCacheGrind crashes when opening large cachegrind file
Summary: kCacheGrind crashes when opening large cachegrind file
Status: RESOLVED WORKSFORME
Alias: None
Product: kcachegrind
Classification: Developer tools
Component: general (other bugs)
Version First Reported In: 0.6kde
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Josef Weidendorfer
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-10 11:00 UTC by Richard J. Turner
Modified: 2018-11-29 04:49 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Richard J. Turner 2011-01-10 11:00:07 UTC
Application: kcachegrind (0.6kde)
KDE Platform Version: 4.5.1 (KDE 4.5.1)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-24-generic x86_64
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:

Just tried to open a cachegrind file created by profiling a PHP site I'm developing.

-- Backtrace:
Application: KCachegrind (kcachegrind), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f19c49fd760 (LWP 4895))]

Thread 2 (Thread 0x7f19b9945700 (LWP 4896)):
#0  0x00007f19c1504203 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f19bd64b009 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007f19bd64b7b5 in g_main_loop_run () from /lib/libglib-2.0.so.0
#3  0x00007f19ba07c0f4 in ?? () from /usr/lib/libgio-2.0.so.0
#4  0x00007f19bd6707e4 in ?? () from /lib/libglib-2.0.so.0
#5  0x00007f19c1d3d971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#6  0x00007f19c151092d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f19c49fd760 (LWP 4895)):
[KCrash Handler]
#6  0x0000000000000000 in ?? ()
#7  0x000000000049716e in FunctionListModel::getInclPixmap (this=0x2312a00, f=0x2f674b8) at ../../../kcachegrind/libviews/functionlistmodel.cpp:404
#8  0x0000000000497d6a in FunctionListModel::data (this=0x2312a00, index=<value optimized out>, role=1) at ../../../kcachegrind/libviews/functionlistmodel.cpp:88
#9  0x00007f19c32f0a3c in data (this=<value optimized out>, option=0x7fff98829250, index=...) at ../../include/QtCore/../../src/corelib/kernel/qabstractitemmodel.h:398
#10 QStyledItemDelegate::initStyleOption (this=<value optimized out>, option=0x7fff98829250, index=...) at itemviews/qstyleditemdelegate.cpp:340
#11 0x00007f19c32f191d in QStyledItemDelegate::paint (this=0x2323370, painter=0x7fff98829a30, option=..., index=...) at itemviews/qstyleditemdelegate.cpp:420
#12 0x00007f19c3289889 in QTreeView::drawRow (this=<value optimized out>, painter=<value optimized out>, option=<value optimized out>, index=<value optimized out>) at itemviews/qtreeview.cpp:1678
#13 0x00007f19c328441a in QTreeView::drawTree (this=0x22e5890, painter=<value optimized out>, region=<value optimized out>) at itemviews/qtreeview.cpp:1441
#14 0x00007f19c3284f43 in QTreeView::paintEvent (this=0x22e5890, event=0x7fff9882a680) at itemviews/qtreeview.cpp:1274
#15 0x00007f19c2d42c2e in QWidget::event (this=0x22e5890, event=0x7fff9882a680) at kernel/qwidget.cpp:8333
#16 0x00007f19c310e5e6 in QFrame::event (this=0x22e5890, e=0x7fff9882a680) at widgets/qframe.cpp:557
#17 0x00007f19c3247a8b in QAbstractItemView::viewportEvent (this=0x22e5890, event=0x7fff9882a680) at itemviews/qabstractitemview.cpp:1619
#18 0x00007f19c3285d65 in QTreeView::viewportEvent (this=0x22e5890, event=0x7fff9882a680) at itemviews/qtreeview.cpp:1256
#19 0x00007f19c20bb507 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0x22dd170, event=0x7fff9882a680) at kernel/qcoreapplication.cpp:847
#20 0x00007f19c2cecfac in QApplicationPrivate::notify_helper (this=0x209cd80, receiver=0x22dd170, e=0x7fff9882a680) at kernel/qapplication.cpp:4392
#21 0x00007f19c2cf2aed in QApplication::notify (this=0x7fff9882d090, receiver=0x22dd170, e=0x7fff9882a680) at kernel/qapplication.cpp:4277
#22 0x00007f19c3a3f156 in KApplication::notify (this=0x7fff9882d090, receiver=0x22dd170, event=0x7fff9882a680) at ../../kdeui/kernel/kapplication.cpp:310
#23 0x00007f19c20bbcdc in QCoreApplication::notifyInternal (this=0x7fff9882d090, receiver=0x22dd170, event=0x7fff9882a680) at kernel/qcoreapplication.cpp:732
#24 0x00007f19c2d4967d in sendSpontaneousEvent (this=0x2326700, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, backingStore=0x2434fa0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218
#25 QWidgetPrivate::drawWidget (this=0x2326700, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5420
#26 0x00007f19c2d4a328 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=0, rgn=<value optimized out>, offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5627
#27 0x00007f19c2d4a159 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=2, rgn=<value optimized out>, offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5614
#28 0x00007f19c2d4a159 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=4, rgn=<value optimized out>, offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5614
#29 0x00007f19c2d4a159 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=5, rgn=<value optimized out>, offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5614
#30 0x00007f19c2d493da in QWidgetPrivate::drawWidget (this=0x234a070, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5473
#31 0x00007f19c2d4a328 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=5, rgn=<value optimized out>, offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5627
#32 0x00007f19c2d493da in QWidgetPrivate::drawWidget (this=0x22ee590, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5473
#33 0x00007f19c2d4a328 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=5, rgn=<value optimized out>, offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5627
#34 0x00007f19c2d493da in QWidgetPrivate::drawWidget (this=0x22df500, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5473
#35 0x00007f19c2d4a328 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=8, rgn=<value optimized out>, offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5627
#36 0x00007f19c2d4a159 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=..., index=9, rgn=<value optimized out>, offset=<value optimized out>, flags=4, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5614
#37 0x00007f19c2d493da in QWidgetPrivate::drawWidget (this=0x22d7090, pdev=<value optimized out>, rgn=..., offset=<value optimized out>, flags=<value optimized out>, sharedPainter=0x0, backingStore=0x2434fa0) at kernel/qwidget.cpp:5473
#38 0x00007f19c2f1d408 in QWidgetBackingStore::sync (this=0x2434fa0) at painting/qbackingstore.cpp:1328
#39 0x00007f19c2d3c730 in QWidgetPrivate::syncBackingStore (this=0x22d7090) at kernel/qwidget.cpp:1805
#40 0x00007f19c2d432f5 in QWidget::event (this=0x22d6e50, event=0x44c2fb0) at kernel/qwidget.cpp:8480
#41 0x00007f19c312a41b in QMainWindow::event (this=0x22d6e50, event=0x44c2fb0) at widgets/qmainwindow.cpp:1417
#42 0x00007f19c3b5b683 in KXmlGuiWindow::event (this=0x253dd70, ev=0x2312a00) at ../../kdeui/xmlgui/kxmlguiwindow.cpp:130
#43 0x00007f19c2cecfdc in QApplicationPrivate::notify_helper (this=0x209cd80, receiver=0x22d6e50, e=0x44c2fb0) at kernel/qapplication.cpp:4396
#44 0x00007f19c2cf2aed in QApplication::notify (this=0x7fff9882d090, receiver=0x22d6e50, e=0x44c2fb0) at kernel/qapplication.cpp:4277
#45 0x00007f19c3a3f156 in KApplication::notify (this=0x7fff9882d090, receiver=0x22d6e50, event=0x44c2fb0) at ../../kdeui/kernel/kapplication.cpp:310
#46 0x00007f19c20bbcdc in QCoreApplication::notifyInternal (this=0x7fff9882d090, receiver=0x22d6e50, event=0x44c2fb0) at kernel/qcoreapplication.cpp:732
#47 0x00007f19c20bec22 in sendEvent (receiver=0x0, event_type=<value optimized out>, data=0x2085350) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#48 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=<value optimized out>, data=0x2085350) at kernel/qcoreapplication.cpp:1373
#49 0x00007f19c20e8653 in sendPostedEvents (s=0x20a0980) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#50 postEventSourceDispatch (s=0x20a0980) at kernel/qeventdispatcher_glib.cpp:277
#51 0x00007f19bd647342 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#52 0x00007f19bd64b2a8 in ?? () from /lib/libglib-2.0.so.0
#53 0x00007f19bd64b45c in g_main_context_iteration () from /lib/libglib-2.0.so.0
#54 0x00007f19c20e8193 in QEventDispatcherGlib::processEvents (this=0x2084e60, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:415
#55 0x00007f19c2d9fa4e in QGuiEventDispatcherGlib::processEvents (this=0x253dd70, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#56 0x00007f19c20baa02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#57 0x00007f19c20badec in QEventLoop::exec (this=0x7fff9882cfe0, flags=) at kernel/qeventloop.cpp:201
#58 0x00007f19c20beebb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#59 0x0000000000420308 in main (argc=<value optimized out>, argv=<value optimized out>) at ../../../kcachegrind/kcachegrind/main.cpp:91

Reported using DrKonqi
Comment 1 Josef Weidendorfer 2011-01-10 15:03:09 UTC
For the bug report summary it looks like you assume this crash has to do
with the size of your callgrind file. How large is it?
Can you make it available to me for reproduction of this issue?
Comment 2 Richard J. Turner 2011-01-10 15:23:36 UTC
Actually, when I tried to open it again it worked. Dunno if that says anything about whether it's the size of the file that was the problem.

I no longer have the exact file that caused the crash - Apache has written over it - but I've generated another that should be the same. It's just over 150Mb. Please let me know when you have it so that I can remove it from my Ubuntu One storage. http://ubuntuone.com/p/XVq/
Comment 3 Josef Weidendorfer 2011-01-10 21:41:43 UTC
You can remove it, thanks.

Hmm. 150 MB is not really that large. It will
definitely not trigger any out-of-memory situation,
even not with 32bit (and you are obviously at 64bit).
Anyway, I can not reproduce the crash.

Does this crash for you?
When does it crash? Directly after/at loading the file?
Or after selecting a function?

I can not really make much out of the backtrace above.
If the crash produces the same backtrace, you could try
the following: add before functionlistmodel.cpp, line 404
the following: "if (!f || !f->data()) return;" and recompile.
And if it still crashes, it must be somewhere in
"FunctionListModel::getInclPixmap()".

Sorry, as you probably can see, I am a little lost with this
bug report...
Comment 4 Andrew Crouthamel 2018-10-30 00:00:24 UTC
Dear Bug Submitter,

This bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? I am setting the status to NEEDSINFO pending your response, please change the Status back to REPORTED when you respond.

Thank you for helping us make KDE software even better for everyone!
Comment 5 Bug Janitor Service 2018-11-14 11:28:03 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 6 Bug Janitor Service 2018-11-29 04:49:15 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!