Created attachment 59780 [details] Full backtrace of frozen process Version: 2.4.0 (using KDE 4.6.2) OS: Linux Amarok seems to occasionally freeze when left paused for a long period of time (several hours). Reproducible: Sometimes Steps to Reproduce: Play a song, pause, come back several hours later. Actual Results: Amarok freezes, doesn't seem to be using a lot of CPU (i.e. probably not an infinite loop) I'm not familiar with the Amarok code, but this seems to be the most relevant part of a backtrace (produced by attaching gdb to the frozen process, and running 'thread apply all bt full') Thread 1 (Thread 0x7f1ed0b7d840 (LWP 2384)): #0 get (this=0x21953b0, markStack=...) at ../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.h:215 No locals. #1 isCellMarked (this=0x21953b0, markStack=...) at ../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.h:269 No locals. #2 append (this=0x21953b0, markStack=...) at ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSCell.h:329 No locals. #3 append (this=0x21953b0, markStack=...) at ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSCell.h:340 No locals. #4 QScriptEnginePrivate::mark (this=0x21953b0, markStack=...) at api/qscriptengine.cpp:1272 it = 0x34a74e0 q = 0x1e8b9e0 #5 0x0000003e8a10d0ca in QTJSC::Heap::markRoots (this=0x7f1e92674618) at ../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp:1154 markStack = @0x7f1e92674708 #6 0x0000003e8a10df69 in QTJSC::Heap::reset (this=0x7f1e92674618) at ../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp:1267 No locals. #7 0x0000003e8a10e041 in QTJSC::Heap::allocate (this=0x7f1e92674618, s=<value optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp:403 No locals. #8 0x0000003e8a1da154 in operator new (this=0x21953b0, value=...) at ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSCell.h:167 No locals. #9 QScriptEnginePrivate::newVariant (this=0x21953b0, value=...) at api/qscriptengine.cpp:1693 obj = <value optimized out> proto = <value optimized out> #10 0x0000003e8a1de0f1 in QScriptEnginePrivate::create (exec=0x21955c8, type= 532, ptr=0x7fff591bb8e8) at api/qscriptengine.cpp:3091 typeName = {static shared_null = {ref = {_q_value = 1}, alloc = 0, size = 0, data = 0x611478 "", array = ""}, static shared_empty = { ref = {_q_value = 341}, alloc = 0, size = 0, data = 0x3e82c8e9d8 "", array = ""}, d = 0x34eb0e0} result = <value optimized out> eng = <value optimized out> info = <value optimized out> #11 0x0000003e8a1de902 in QScriptEngine::create (this=<value optimized out>, type=532, ptr=0x7fff591bb8e8) at api/qscriptengine.cpp:2989 d = 0x21953b0 shim = {m_engine = 0x21953b0, m_oldTable = 0x0} #12 0x00007f1e9d1ee94f in qScriptValueFromValue_helper (this=0x238d1a0, arg__1=0x7fff591bbf00) at /usr/include/QtScript/qscriptengine.h:328 No locals. #13 qScriptValueFromValue<QEvent*> (this=0x238d1a0, arg__1=0x7fff591bbf00) at /usr/include/QtScript/qscriptengine.h:334 No locals. #14 QtScriptShell_QObject::event (this=0x238d1a0, arg__1=0x7fff591bbf00) at ../../generated_cpp/com_trolltech_qt_core/qtscriptshell_QObject.cpp:60 _q_engine = 0x1e8b9e0 _q_function = {d_ptr = {d = 0x2c4b6c0}} #15 0x0000003e841b7cd4 in QApplicationPrivate::notify_helper (this=0xf05dc0, receiver=0x238d1a0, e=0x7fff591bbf00) at kernel/qapplication.cpp:4462 consumed = <value optimized out> #16 0x0000003e841bc88a in QApplication::notify (this=<value optimized out>, receiver=0x238d1a0, e=0x7fff591bbf00) at kernel/qapplication.cpp:4341 d = 0xf05dc0 res = false #17 0x0000003fa723ff96 in KApplication::notify (this=0x7fff591bc200, receiver= 0x238d1a0, event=0x7fff591bbf00) at /usr/src/debug/kdelibs-4.6.2/kdeui/kernel/kapplication.cpp:311 No locals. #18 0x0000003e8295d19c in QCoreApplication::notifyInternal (this= 0x7fff591bc200, receiver=0x238d1a0, event=0x7fff591bbf00) at kernel/qcoreapplication.cpp:731 threadData = 0xd86a10 returnValue = <value optimized out> result = false cbdata = {0x238d1a0, 0x7fff591bbf00, 0x7fff591bbeaf} d = <value optimized out> #19 0x0000003e8298aeae in sendEvent (this=0xf05af0) at kernel/qcoreapplication.h:215 No locals. #20 QTimerInfoList::activateTimers (this=0xf05af0) at kernel/qeventdispatcher_unix.cpp:604 e = {<QEvent> = {_vptr.QEvent = 0x3e82c8a410, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x3e82a2af20 "QEvent", data = 0x3e82a2b900, extradata = 0x0}}, d = 0x0, t = 1, posted = 0, spont = 0, m_accept = 1, reserved = 1610}, id = 117440594} currentTimerInfo = 0x238c0c0 n_act = 3 maxCount = <value optimized out> currentTime = {tv_sec = 9981, tv_usec = 421747} #21 0x0000003e82987c78 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184 timerSource = <value optimized out> #22 idleTimerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:231 timerSource = <value optimized out> #23 0x0000003332241e33 in g_main_dispatch (context=0xf05200) at gmain.c:2149 dispatch = 0x3e82987c60 <idleTimerSourceDispatch(GSource*, GSourceFunc, gpointer)> was_in_call = 0 user_data = 0x0 callback = 0 cb_funcs = 0x0 cb_data = 0x0 current_source_link = {data = 0xf05b40, next = 0x0} need_destroy = <value optimized out> source = 0xf05b40 current = 0x1443b70 i = <value optimized out> #24 g_main_context_dispatch (context=0xf05200) at gmain.c:2702 No locals. #25 0x0000003332242610 in g_main_context_iterate (context=0xf05200, block=1, dispatch=1, self=<value optimized out>) at gmain.c:2780 max_priority = 2147483647 timeout = 13 some_ready = 1 nfds = 10 allocated_nfds = <value optimized out> fds = <value optimized out> #26 0x00000033322428ad in g_main_context_iteration (context=0xf05200, may_block=1) at gmain.c:2843 retval = <value optimized out> #27 0x0000003e8298834f in QEventDispatcherGlib::processEvents (this=0xd861f0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:422 d = 0xf06070 canWait = true savedFlags = {i = 0} result = <value optimized out> #28 0x0000003e8425d35e in QGuiEventDispatcherGlib::processEvents ( this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:207 d = 0xf06070 saved_flags = {i = 0} returnValue = false #29 0x0000003e8295c532 in QEventLoop::processEvents ( this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149 d = 0x1b06770 #30 0x0000003e8295c77c in QEventLoop::exec (this=0x7fff591bc190, flags=...) at kernel/qeventloop.cpp:201 d = 0x1b06770 app = 0x7fff591bc200 #31 0x0000003e82960c3b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008 threadData = 0xd86a10 eventLoop = {<QObject> = {_vptr.QObject = 0x3e82c8cb90, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x3e82a18820 "QObject", data = 0x3e82a188c0, extradata = 0x3e82c847c0}}, d_ptr = {d = 0x1b06770}, static staticQtMetaObject = {d = { superdata = 0x0, stringdata = 0x3e82a21500 "Qt", data = 0x3e82a24d80, extradata = 0x0}}}, static staticMetaObject = {d = { superdata = 0x3e82c847a0, stringdata = 0x3e82a2ad20 "QEventLoop", data = 0x3e82a2ad40, extradata = 0x0}}} returnCode = <value optimized out> #32 0x000000000040954d in main (argc=1, argv=0x7fff591be678) at /usr/src/debug/amarok-2.4.0/src/main.cpp:268 debugColorsEnabled = <value optimized out> debugEnabled = false app = {<KUniqueApplication> = {<KApplication> = {<QApplication> = {<QCoreApplication> = {<QObject> = {_vptr.QObject = 0x3cc2f35d90, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x3e82a18820 "QObject", data = 0x3e82a188c0, extradata = 0x3e82c847c0}}, d_ptr = {d = 0xf05dc0}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0x3e82a21500 "Qt", data = 0x3e82a24d80, extradata = 0x0}}}, static staticMetaObject = {d = { superdata = 0x3e82c847a0, stringdata = 0x3e82a2adc0 "QCoreApplication", data = 0x3e82a2ae60, extradata = 0x0}}, static self = 0x7fff591bc200}, static staticMetaObject = { d = {superdata = 0x3e82c8cc20, stringdata = 0x3e84837680 "QApplication", data = 0x3e848378c0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x3e84c56b40, stringdata = 0x3fa73a62c0 "KApplication", data = 0x3fa73a6460, extradata = 0x0}}, static loadedByKdeinit = false, static KApp = 0x7fff591bc200, d = 0xf75c50}, static staticMetaObject = {d = {superdata = 0x3fa76411c0, stringdata = 0x3fa73a6aa0 "KUniqueApplication", data = 0x3fa73a6ba0, extradata = 0x0}}, d = 0xfe1000}, static staticMetaObject = {d = {superdata = 0x3fa7641360, stringdata = 0x3cc2ba4da0 "App", data = 0x3cc2ba4fa0, extradata = 0x0}}, static mainThreadId = 0, m_isUniqueInstance = false, m_mainWindow = {d = 0x146daf0, value = 0xf15b10}, m_tray = 0x17bafe0, m_mediaDeviceManager = 0x0, static s_delayedAmarokUrls = {<QList<QString>> = {{p = { static shared_null = {ref = {_q_value = 1}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x611400}, d = 0x611400}}, <No data fields>}} args = 0xef6b20 startFlag = 0
Seems to be gone in 2.4.1, thanks :) Will reopen if it reoccurs.
Thank you for the fast feedback :)