Application: kcachegrind (0.7.1kde) KDE Platform Version: 4.9.3 Qt Version: 4.8.3 Operating System: Linux 3.5.0-21-generic i686 Distribution: Ubuntu 12.10 -- Information about the crash: - What I was doing when the application crashed: I have opened (tried to open) a 2.2GB cachegrind file. KCachegrind has crashed as (more or less) 25% was reached. The cachegrind-file may contain a long loop as i guess that the php-app was hanging in a endless loop for a while. I cannot verify that because i cannot open that file. It is not a RAM overflow (there are 8GB installed, not even one fully used). The crash can be reproduced every time. -- Backtrace: Application: KCachegrind (kcachegrind), signal: Aborted Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1". [Current thread is 1 (Thread 0xb4f17740 (LWP 18647))] Thread 3 (Thread 0xb1cffb40 (LWP 18651)): #0 __pthread_getspecific (key=3) at pthread_getspecific.c:58 #1 0xb5563452 in g_private_get () from /lib/i386-linux-gnu/libglib-2.0.so.0 #2 0xb5547904 in g_thread_self () from /lib/i386-linux-gnu/libglib-2.0.so.0 #3 0xb5520f03 in g_main_context_acquire () from /lib/i386-linux-gnu/libglib-2.0.so.0 #4 0xb5521ba8 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0 #5 0xb55221db in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0 #6 0xb3522b7a in ?? () from /usr/lib/i386-linux-gnu/libgio-2.0.so.0 #7 0xb5547303 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0 #8 0xb55f7d4c in start_thread (arg=0xb1cffb40) at pthread_create.c:308 #9 0xb5ddbd3e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 2 (Thread 0xaf35db40 (LWP 18686)): #0 0xb52fadcd in __GI_clock_gettime (clock_id=1, tp=0xaf35cf78) at ../sysdeps/unix/clock_gettime.c:116 #1 0xb6090fb5 in do_gettime (frac=0xaf35cf70, sec=0xaf35cf68) at tools/qelapsedtimer_unix.cpp:123 #2 qt_gettime () at tools/qelapsedtimer_unix.cpp:140 #3 0xb617836e in QTimerInfoList::updateCurrentTime (this=0xaea01a34) at kernel/qeventdispatcher_unix.cpp:343 #4 0x7fffffff in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 1 (Thread 0xb4f17740 (LWP 18647)): [KCrash Handler] #7 0xb77b6424 in __kernel_vsyscall () #8 0xb5d1b1df in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #9 0xb5d1e825 in __GI_abort () at abort.c:91 #10 0xb602772c in qt_message_output (msgType=QtFatalMsg, buf=0xb1d08da8 "ERROR: Out of memory. Sorry. KCachegrind has to terminate.\n\nYou probably tried to load a profile data file too huge forthis system. You could try loading this file on a 64-bit OS.") at global/qglobal.cpp:2290 #11 0xb6027b39 in qt_message (msgType=QtFatalMsg, msg=0x80f8e84 "ERROR: Out of memory. Sorry. KCachegrind has to terminate.\n\nYou probably tried to load a profile data file too huge forthis system. You could try loading this file on a 64-bit OS.", ap=0xbfff2084 "\240!\377\277\f \377\277\212\334\b\b\210\021T\n\300\315R\n,") at global/qglobal.cpp:2336 #12 0xb6027c58 in qFatal (msg=0x80f8e84 "ERROR: Out of memory. Sorry. KCachegrind has to terminate.\n\nYou probably tried to load a profile data file too huge forthis system. You could try loading this file on a 64-bit OS.") at global/qglobal.cpp:2519 #13 0x080905e8 in ensureSpace (this=<optimized out>, size=<optimized out>) at ../../../kcachegrind/libcore/pool.cpp:107 #14 FixPool::ensureSpace (this=0xa52cdc0, size=44) at ../../../kcachegrind/libcore/pool.cpp:93 #15 0x0809066f in FixPool::allocate (this=0xa52cdc0, size=44) at ../../../kcachegrind/libcore/pool.cpp:59 #16 0x0808ecdc in CachegrindLoader::loadInternal (this=this@entry=0xbfff220c, data=data@entry=0xa5426d0, device=device@entry=0xbfff23b8, filename=...) at ../../../kcachegrind/libcore/cachegrindloader.cpp:1144 #17 0x0808faf3 in CachegrindLoader::load (this=0xa060e50, d=0xa5426d0, file=0xbfff23b8, filename=...) at ../../../kcachegrind/libcore/cachegrindloader.cpp:181 #18 0x0807d841 in TraceData::internalLoad (this=this@entry=0xa5426d0, device=device@entry=0xbfff23b8, filename=...) at ../../../kcachegrind/libcore/tracedata.cpp:3239 #19 0x08086c29 in TraceData::load (this=0xa5426d0, base=...) at ../../../kcachegrind/libcore/tracedata.cpp:3198 #20 0x0806ad14 in TopLevel::openDataFile (this=this@entry=0xa07a2f0, file=...) at ../../../kcachegrind/kcachegrind/toplevel.cpp:2366 #21 0x0806b288 in loadTrace (file=..., this=0xa07a2f0) at ../../../kcachegrind/kcachegrind/toplevel.cpp:976 #22 TopLevel::loadTrace (this=0xa07a2f0, file=...) at ../../../kcachegrind/kcachegrind/toplevel.cpp:958 #23 0x0806b577 in loadTrace (url=..., this=0xa07a2f0) at ../../../kcachegrind/kcachegrind/toplevel.cpp:946 #24 TopLevel::loadTrace (this=0xa07a2f0, url=...) at ../../../kcachegrind/kcachegrind/toplevel.cpp:935 #25 0x0806b696 in TopLevel::loadTrace (this=this@entry=0xa07a2f0) at ../../../kcachegrind/kcachegrind/toplevel.cpp:932 #26 0x0806c085 in qt_static_metacall (_a=0xbfff2648, _id=1, _o=0xa07a2f0, _c=<optimized out>) at ./toplevel.moc:203 #27 TopLevel::qt_static_metacall (_o=0xa07a2f0, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0xbfff2648) at ./toplevel.moc:196 #28 0xb615ded6 in QMetaObject::activate (sender=0xa1f1260, m=0x8122430 <QAction::staticMetaObject>, local_signal_index=1, argv=0xbfff2648) at kernel/qobject.cpp:3547 #29 0xb672a10d in QAction::triggered (this=this@entry=0xa1f1260, _t1=false) at .moc/release-shared/moc_qaction.cpp:277 #30 0xb672a3ac in QAction::activate (this=0xa1f1260, event=QAction::Trigger) at kernel/qaction.cpp:1257 #31 0xb6c262d0 in trigger (this=<optimized out>) at ../../include/QtGui/../../src/gui/kernel/qaction.h:218 #32 QToolButton::nextCheckState (this=0xa31abf0) at widgets/qtoolbutton.cpp:1144 #33 0xb6b50ee7 in QAbstractButtonPrivate::click (this=this@entry=0xa31ac08) at widgets/qabstractbutton.cpp:530 #34 0xb6b511e6 in QAbstractButton::mouseReleaseEvent (this=0xa31abf0, e=0xbfff2d94) at widgets/qabstractbutton.cpp:1123 #35 0xb6c2636d in QToolButton::mouseReleaseEvent (this=0xa31abf0, e=0xbfff2d94) at widgets/qtoolbutton.cpp:718 #36 0xb678a6df in QWidget::event (this=0xa31abf0, event=0xbfff2d94) at kernel/qwidget.cpp:8371 #37 0xb6b505a2 in QAbstractButton::event (this=0xa31abf0, e=0xbfff2d94) at widgets/qabstractbutton.cpp:1082 #38 0xb6c27a4d in QToolButton::event (this=0xa31abf0, event=0xbfff2d94) at widgets/qtoolbutton.cpp:1160 #39 0xb673139c in QApplicationPrivate::notify_helper (this=0x9e9c668, receiver=0xa31abf0, e=0xbfff2d94) at kernel/qapplication.cpp:4562 #40 0xb6736892 in QApplication::notify (this=0x9e9c668, receiver=0xa31abf0, e=0xbfff2d94) at kernel/qapplication.cpp:4105 #41 0xb72a5e91 in KApplication::notify (this=0xbfff3594, receiver=0xa31abf0, event=0xbfff2d94) at ../../kdeui/kernel/kapplication.cpp:311 #42 0xb614578e in QCoreApplication::notifyInternal (this=0xbfff3594, receiver=0xa31abf0, event=0xbfff2d94) at kernel/qcoreapplication.cpp:915 #43 0xb6732206 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231 #44 QApplicationPrivate::sendMouseEvent (receiver=0xa31abf0, event=0xbfff2d94, alienWidget=0xa31abf0, nativeWidget=0xa2e8bd8, buttonDown=0xb70c2d14 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3173 #45 0xb67bda75 in QETWidget::translateMouseEvent (this=0xa2e8bd8, event=0xbfff31bc) at kernel/qapplication_x11.cpp:4622 #46 0xb67bc705 in QApplication::x11ProcessEvent (this=0xbfff3594, event=0xbfff31bc) at kernel/qapplication_x11.cpp:3737 #47 0xb67e7dc4 in x11EventSourceDispatch (s=0x9e9cd90, callback=0x0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146 #48 0xb55219e3 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0 #49 0xb5521d80 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0 #50 0xb5521e61 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0 #51 0xb6177981 in QEventDispatcherGlib::processEvents (this=0x9e7c7b0, flags=...) at kernel/qeventdispatcher_glib.cpp:424 #52 0xb67e79aa in QGuiEventDispatcherGlib::processEvents (this=0x9e7c7b0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #53 0xb614426c in QEventLoop::processEvents (this=this@entry=0xbfff34b8, flags=...) at kernel/qeventloop.cpp:149 #54 0xb6144561 in QEventLoop::exec (this=0xbfff34b8, flags=...) at kernel/qeventloop.cpp:204 #55 0xb6149cba in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187 #56 0xb672efc4 in QApplication::exec () at kernel/qapplication.cpp:3823 #57 0x0805e5ad in main (argc=3, argv=0xbfff3664) at ../../../kcachegrind/kcachegrind/main.cpp:91 Reported using DrKonqi
> #12 0xb6027c58 in qFatal (msg=0x80f8e84 "ERROR: Out of memory. Sorry. KCachegrind has to terminate.\n\nYou probably tried to load a profile data file too huge forthis system. You could try loading this file on a 64-bit OS.") at global/qglobal.cpp:2519 > #13 0x080905e8 in ensureSpace (this=<optimized out>, size=<optimized out>) at ../../../kcachegrind/libcore/pool.cpp:107 Looking at pool.cpp:107, the call to qFatal is triggered because of malloc returning null, so definitly this is a out-of-memory condition. > It is not a RAM overflow (there are 8GB installed, not even one fully used). A process running out-of-memory does not require running out of physical memory: E.g. malloc returns null of the address space is exhausted. And this makes sense in your case: > Operating System: Linux 3.5.0-21-generic i686 If I interpret this correctly, you are running on arch i686, i.e. a 32-bit kernel, thus kcachegrind also runs as 32bit process, with perhaps 2-3GB address space available. With 8GB physical memory, I strongly would suggest to run a 64-bit Linux installation. This may be enough in your case to load the file. Neverless, it is a known bug (tracked by 232470) that kcachegrind needs space linear in the size of the profile file even if the measurements point to the same source (the endless loop in your case). There is a workaround, setting a flag (USE_FIXCOST) to 0 and recompile (see other bug). Marking as duplicate. *** This bug has been marked as a duplicate of bug 232470 ***