Version: 2.4.0 (using KDE 4.6.0) OS: Linux Playing the music with amarok I get the assertion and amarok ends sometimes: ASSERT: "m_state == BufferingState" in file ../../xine/mediaobject.cpp, line 235 KCrash: Application 'amarok' crashing... KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit sock_file=/home/vsysolts/.kde/socket-vsysolts-laptop-ubuntu/kdeinit4__0 QSocketNotifier: Invalid socket 46 and type 'Read', disabling... Assertion 'pa_close(fds[0]) == 0' failed at pulsecore/core-util.c:2215, function pa_close_pipe(). Aborting. It happens without any obvious reason. Reproducible: Sometimes Steps to Reproduce: Just play the music with amarok Actual Results: crash Expected Results: work further
Could you please provide a complete backtrace?
Well, I'l be starting amarok in gdb, if I get this once more I post the stacktrace.
*** Bug 266800 has been marked as a duplicate of this bug. ***
Murphy's law - no crash in debugger today ;) I'll keep trying.
here we are: amarok: END__: void Albums::dataUpdated(const QString&, const QHash<QString, QVariant>&) [Took: 0.56s] amarok: BEGIN: void CurrentTrack::dataUpdated(const QString&, const QHash<QString, QVariant>&) amarok: BEGIN: void CurrentTrack::resizeCover(const QPixmap&, qreal) params.c:OpenConfFile() - Unable to open configuration file "/home/vsysolts/.smb/smb.conf.append": No such file or directory [New LWP 2068] amarok: END__: void CurrentTrack::resizeCover(const QPixmap&, qreal) [Took: 0.28s] amarok: END__: void CurrentTrack::dataUpdated(const QString&, const QHash<QString, QVariant>&) [Took: 0.29s] amarok: BEGIN: void LyricsApplet::dataUpdated(const QString&, const QHash<QString, QVariant>&) amarok: END__: void LyricsApplet::dataUpdated(const QString&, const QHash<QString, QVariant>&) [Took: 0s] ASSERT: "m_state == BufferingState" in file ../../xine/mediaobject.cpp, line 235 Program received signal SIGABRT, Aborted. 0x0012e416 in __kernel_vsyscall () (gdb) thread apply all bt Thread 5 (LWP 2068): #0 0x0012e416 in __kernel_vsyscall () #1 0x032234ad in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:142 #2 0x020e9d9d in __pthread_cond_wait (cond=0x836f3f8, mutex=0x836f3d8) at forward.c:139 #3 0x0529963c in pa_cond_wait () from /usr/lib/libpulsecommon-0.9.21.so #4 0x03754c20 in pa_threaded_mainloop_wait () from /usr/lib/libpulse.so.0 #5 0x079da0b6 in ?? () from /usr/lib/xine/plugins/1.28/xineplug_ao_out_pulseaudio.so #6 0x0000ac44 in ?? () #7 0x00000002 in ?? () #8 0x08c5b280 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 4 (LWP 1985): #0 0x0012e416 in __kernel_vsyscall () #1 0x020cddf6 in __poll (fds=0x2164ff4, nfds=1, timeout=49) at ../sysdeps/unix/sysv/linux/poll.c:87 #2 0x033b6a1b in g_poll () from /lib/libglib-2.0.so.0 #3 0x033a943c in ?? () from /lib/libglib-2.0.so.0 #4 0x033a9848 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #5 0x01dff565 in QEventDispatcherGlib::processEvents (this=0x8314ad8, flags=...) at kernel/qeventdispatcher_glib.cpp:415 #6 0x01dcf609 in QEventLoop::processEvents (this=0xb04fd220, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece. ) at kernel/qeventloop.cpp:149 #7 0x01dcfa8a in QEventLoop::exec (this=0xb04fd220, flags=...) at kernel/qeventloop.cpp:201 #8 0x01ccbb7e in QThread::exec (this=0x8315268) at thread/qthread.cpp:490 ---Type <return> to continue, or q <return> to quit--- #9 0x06adbd7a in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so #10 0x01ccedf9 in QThreadPrivate::start (arg=0x8315268) at thread/qthread_unix.cpp:266 #11 0x0321ecc9 in start_thread (arg=0xb04fdb70) at pthread_create.c:304 #12 0x020dc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 3 (LWP 1997): #0 0x0012e416 in __kernel_vsyscall () #1 0x032234dc in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169 #2 0x020e9d9d in __pthread_cond_wait (cond=0x8a5eb50, mutex=0x8a5eb38) at forward.c:139 #3 0x01ccf9c7 in wait (this=0x8a5ea58, mutex=0x8a4b140, time=4294967295) at thread/qwaitcondition_unix.cpp:88 #4 QWaitCondition::wait (this=0x8a5ea58, mutex=0x8a4b140, time=4294967295) at thread/qwaitcondition_unix.cpp:160 #5 0x02913520 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8a5ea40, th=0x8a3a598) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365 #6 0x02916ccc in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x8a68fb0, th=0x8a3a598) at ../../../threadweaver/Weaver/WorkingHardState.cpp:80 #7 0x02912a4b in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x8a5ea40, th=0x8a3a598) at ../../../threadweaver/Weaver/WeaverImpl.cpp:356 #8 0x02916dc2 in ThreadWeaver::WorkingHardState::applyForWork (this=0x8a68fb0, th=0x8a3a598) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71 #9 0x02913a23 in ThreadWeaver::WeaverImpl::applyForWork (this=0x8a5ea40, th=0x8a3a598, previous=0x8afaef0) at ../../../threadweaver/Weaver/WeaverImpl.cpp:351 #10 0x02914e4e in ThreadWeaver::ThreadRunHelper::run (this=0xa605e294, parent=0x8a5ea40, th=0x8a3a598) at ../../../threadweaver/Weaver/Thread.cpp:87 #11 0x0291556b in ThreadWeaver::Thread::run (this=0x8a3a598) at ../../../threadweaver/Weaver/Thread.cpp:142 #12 0x01ccedf9 in QThreadPrivate::start (arg=0x8a3a598) at thread/qthread_unix.cpp:266 #13 0x0321ecc9 in start_thread (arg=0xa605eb70) at pthread_create.c:304 #14 0x020dc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 1 (LWP 1942): ---Type <return> to continue, or q <return> to quit--- #0 0x0012e416 in __kernel_vsyscall () #1 0x02036941 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #2 0x02039e42 in abort () at abort.c:92 #3 0x01cc52dc in qt_message_output (msgType=QtFatalMsg, buf=0x8c92e38 "ASSERT: \"m_state == BufferingState\" in file ../../xine/mediaobject.cpp, line 235") at global/qglobal.cpp:2259 #4 0x01cc54aa in qt_message (msgType=<value optimized out>, msg=0x1e3da7c "ASSERT: \"%s\" in file %s, line %d", ap=0xbfffe104 "xg\262\006]g\262\006", <incomplete sequence \353>) at global/qglobal.cpp:2305 #5 0x01cc55b9 in qFatal (msg=0x1e3da7c "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2488 #6 0x01cc5645 in qt_assert (assertion=0x6b26778 "m_state == BufferingState", file=0x6b2675d "../../xine/mediaobject.cpp", line=235) at global/qglobal.cpp:2004 #7 0x06aff4a1 in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so #8 0x06affe53 in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so #9 0x01dd68ca in QMetaObject::metacall (object=0x8316e60, cl=1942, idx=21, argv=0x0) at kernel/qmetaobject.cpp:237 #10 0x01de1df6 in QMetaCallEvent::placeMetaCall (this=0x9f3e4258, object=0x8316e60) at kernel/qobject.cpp:534 #11 0x01de36a2 in QObject::event (this=0x8316e60, e=0x6) at kernel/qobject.cpp:1219 #12 0x01028fdc in QApplicationPrivate::notify_helper (this=0x8163d30, receiver=0x8316e60, e=0x9f3e4258) at kernel/qapplication.cpp:4396 #13 0x0102f04e in QApplication::notify (this=0xbfffea68, receiver=0x8316e60, e=0x9f3e4258) at kernel/qapplication.cpp:3798 #14 0x00338f7a in KApplication::notify (this=0xbfffea68, receiver=0x8316e60, event=0x9f3e4258) at ../../kdeui/kernel/kapplication.cpp:311 #15 0x01dd0b3b in QCoreApplication::notifyInternal (this=0xbfffea68, receiver=0x8316e60, event=0x9f3e4258) at kernel/qcoreapplication.cpp:732 #16 0x01dd3d8b in sendEvent (receiver=0x0, event_type=0, data=0x8065178) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #17 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x8065178) at kernel/qcoreapplication.cpp:1373 #18 0x01dd3f4d in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1266 #19 0x01dffa74 in sendPostedEvents (s=0x8164f00) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220 #20 postEventSourceDispatch (s=0x8164f00) at kernel/qeventdispatcher_glib.cpp:277 ---Type <return> to continue, or q <return> to quit--- #21 0x033a5855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #22 0x033a9668 in ?? () from /lib/libglib-2.0.so.0 #23 0x033a9848 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #24 0x01dff565 in QEventDispatcherGlib::processEvents (this=0x8064c28, flags=...) at kernel/qeventdispatcher_glib.cpp:415 #25 0x010eabe5 in QGuiEventDispatcherGlib::processEvents (this=0x8064c28, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #26 0x01dcf609 in QEventLoop::processEvents (this=0xbfffe9c4, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece. ) at kernel/qeventloop.cpp:149 #27 0x01dcfa8a in QEventLoop::exec (this=0xbfffe9c4, flags=...) at kernel/qeventloop.cpp:201 #28 0x01dd400f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009 #29 0x01027e07 in QApplication::exec () at kernel/qapplication.cpp:3672 #30 0x08050e75 in main (argc=3, argv=0xbffff424) at ../../src/main.cpp:268
Thank you for the fast feedback. Unfortunately you do not have debugging symbols installed for Phonon backends which are available, could you please install those and try again?
Created attachment 57498 [details] Full stacktrace on crash with phonon dbg installed The stacktrace is attached. The main thread where assertion fails is: Thread 1 (Thread 0xb7fcf770 (LWP 1774)): #0 0x0012e416 in __kernel_vsyscall () #1 0x02036941 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #2 0x02039e42 in abort () at abort.c:92 #3 0x01cc52dc in qt_message_output (msgType=QtFatalMsg, buf=0x8e68c50 "ASSERT: \"m_state == BufferingState\" in file ../../xine/mediaobject.cpp, line 235") at global/qglobal.cpp:2259 #4 0x01cc54aa in qt_message (msgType=<value optimized out>, msg=0x1e3da7c "ASSERT: \"%s\" in file %s, line %d", ap=0xbfffe104 "xg\262\006]g\262\006", <incomplete sequence \353>) at global/qglobal.cpp:2305 #5 0x01cc55b9 in qFatal (msg=0x1e3da7c "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2488 #6 0x01cc5645 in qt_assert (assertion=0x6b26778 "m_state == BufferingState", file=0x6b2675d "../../xine/mediaobject.cpp", line=235) at global/qglobal.cpp:2004 #7 0x06aff4a1 in Phonon::Xine::MediaObject::handleStateChange (this=0x83173d0, newstate=Phonon::PlayingState, oldstate=Phonon::LoadingState) at ../../xine/mediaobject.cpp:235 #8 0x06affe53 in Phonon::Xine::MediaObject::qt_metacall (this=0x83173d0, _c=QMetaObject::InvokeMetaMethod, _id=21, _a=0x9e4e3160) at ./mediaobject.moc:164 #9 0x01dd68ca in QMetaObject::metacall (object=0x83173d0, cl=1774, idx=25, argv=0x9e4e3160) at kernel/qmetaobject.cpp:237 #10 0x01de1df6 in QMetaCallEvent::placeMetaCall (this=0x9e4e6508, object=0x83173d0) at kernel/qobject.cpp:534 #11 0x01de36a2 in QObject::event (this=0x83173d0, e=0x6) at kernel/qobject.cpp:1219 #12 0x01028fdc in QApplicationPrivate::notify_helper (this=0x8163db8, receiver=0x83173d0, e=0x9e4e6508) at kernel/qapplication.cpp:4396 #13 0x0102f04e in QApplication::notify (this=0xbfffea68, receiver=0x83173d0, e=0x9e4e6508) at kernel/qapplication.cpp:3798 #14 0x00338f7a in KApplication::notify (this=0xbfffea68, receiver=0x83173d0, event=0x9e4e6508) at ../../kdeui/kernel/kapplication.cpp:311 #15 0x01dd0b3b in QCoreApplication::notifyInternal (this=0xbfffea68, receiver=0x83173d0, event=0x9e4e6508) at kernel/qcoreapplication.cpp:732 #16 0x01dd3d8b in sendEvent (receiver=0x0, event_type=0, data=0x8065178) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #17 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x8065178) at kernel/qcoreapplication.cpp:1373 #18 0x01dd3f4d in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1266 #19 0x01dffa74 in sendPostedEvents (s=0x8167b08) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220 #20 postEventSourceDispatch (s=0x8167b08) at kernel/qeventdispatcher_glib.cpp:277 #21 0x033a5855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #22 0x033a9668 in ?? () from /lib/libglib-2.0.so.0 #23 0x033a9848 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #24 0x01dff565 in QEventDispatcherGlib::processEvents (this=0x8064c28, flags=...) at kernel/qeventdispatcher_glib.cpp:415 #25 0x010eabe5 in QGuiEventDispatcherGlib::processEvents (this=0x8064c28, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #26 0x01dcf609 in QEventLoop::processEvents (this=0xbfffe9c4, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece. ) at kernel/qeventloop.cpp:149 #27 0x01dcfa8a in QEventLoop::exec (this=0xbfffe9c4, flags=...) at kernel/qeventloop.cpp:201 #28 0x01dd400f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009 #29 0x01027e07 in QApplication::exec () at kernel/qapplication.cpp:3672 #30 0x08050e75 in main (argc=3, argv=0xbffff424) at ../../src/main.cpp:268 (gdb) up 7 #7 0x06aff4a1 in Phonon::Xine::MediaObject::handleStateChange (this=0x83173d0, newstate=Phonon::PlayingState, oldstate=Phonon::LoadingState) at ../../xine/mediaobject.cpp:235 235 ../../xine/mediaobject.cpp: No such file or directory. in ../../xine/mediaobject.cpp (gdb) p *this $1 = {<QObject> = {_vptr.QObject = 0x6b2ce88, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x1e98d80 "QObject", data = 0x1e98e20, extradata = 0x1efe240}}, d_ptr = {d = 0x8316968}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0x1ea18c0 "Qt", data = 0x1ea5000, extradata = 0x0}}}, <Phonon::MediaObjectInterface> = {_vptr.MediaObjectInterface = 0x6b2cf28}, <Phonon::AddonInterface> = { _vptr.AddonInterface = 0x6b2cf8c}, <Phonon::Xine::SourceNode> = {_vptr.SourceNode = 0x6b2cfa4, m_threadSafeObject = {d = 0x836d800}, m_sinks = {q_hash = { {d = 0x836cd28, e = 0x836cd28}}}}, static staticMetaObject = {d = {superdata = 0x1efe230, stringdata = 0x6b271e0 "Phonon::Xine::MediaObject", data = 0x6b27820, extradata = 0x0}}, m_state = Phonon::LoadingState, m_stream = 0x836d7f8, m_tickInterval = 100, m_bytestream = {o = 0x0}, m_currentTimeOverride = 7274612, m_mediaSource = {d = {d = 0x8c4c2a8}}, m_titles = {{p = {static shared_null = {ref = {_q_value = 1}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x805b0d0}, d = 0x805b0d0}}, m_mediaDevice = {static shared_null = {ref = {_q_value = 1}, alloc = 0, size = 0, data = 0x805b110 "", array = ""}, static shared_empty = {ref = {_q_value = 139}, alloc = 0, size = 0, data = 0x1f043b8 "", array = ""}, d = 0x805b100}, m_currentTitle = 1, m_prefinishMark = 2000, m_transitionTime = 0, m_autoplayTitles = true, m_waitingForNextSource = false} (gdb) It seems like phonon backend is switched to playing state before it could initialize itself up
Oh, forgot to mention, the last two times I caught this issue were when the amarok just started after laptop boot. The original issue has happened just playing music nevertheless, but I couldn't catch it anymore (has some update this week, maybe tied together). I'll let you know if I can reproduce the issue not just after amarok starts as well.
One more notice: I'm actually running gnome desktop, maybe phonon-xine backend starts first with amarok and thus require some time to get up
This is indeed a duplicate of a Phonon backend xine problem. Could you please try with either Phonon gstreamer backend (gstreamer is default for the Gnome desktop) or the vlc backend? *** This bug has been marked as a duplicate of bug 219241 ***