Bug 105716

Summary: Amarok crashes constantly - seems to be related to gstreamer
Product: [Applications] amarok Reporter: Duke <duke>
Component: generalAssignee: Amarok Developers <amarok-bugs-dist>
Status: RESOLVED NOT A BUG    
Severity: crash    
Priority: NOR    
Version: 1.2.3   
Target Milestone: ---   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Duke 2005-05-15 18:55:50 UTC
Version:           1.2.3 (using KDE KDE 3.3.2)
Installed from:    Gentoo Packages
Compiler:          gcc version 3.3.5-20050130 Gentoo Linux 3.3.5.20050130-r1, ssp-3.3.5.20050130-1, pie-8.7.7.1
OS:                Linux

Since I started using it Amarok has crashed constantly but at random times.  I can't duplicate it 'manually', but if I wait long enough (usually more than an hour sometimes less) Amarok will crash.

I've compiled it with debugging enabled and unstripped binaries.  Here is the output from bt in gdb:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 81923 (LWP 10790)]
0xb7462b07 in posix_memalign () from /usr/kde/3.3/lib/libkdecore.so.4
(gdb) bt
#0  0xb7462b07 in posix_memalign () from /usr/kde/3.3/lib/libkdecore.so.4
#1  0xb7461fc2 in free () from /usr/kde/3.3/lib/libkdecore.so.4
#2  0xb5f483e4 in g_free () from /usr/lib/libglib-2.0.so.0
#3  0xb6166bc3 in gst_buffer_default_free ()
   from /usr/lib/libgstreamer-0.8.so.1
#4  0xb616babd in gst_data_unref () from /usr/lib/libgstreamer-0.8.so.1
#5  0xb627cd58 in gst_adapter_flush (adapter=0x8bc87e0, flush=267984)
    at adapter.c:207
#6  0xb627f21d in GstEngine::handoff_cb (buf=0x8eb68c4) at gstengine.cpp:106
#7  0xb6128de1 in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#8  0xb6117acf in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#9  0xb61280c6 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
#10 0xb6127227 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#11 0xb6127496 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#12 0xb5e3ad28 in gst_identity_get_type ()
   from /usr/lib/gstreamer-0.8/libgstelements.so
#13 0xb618851b in gst_pad_call_chain_function ()
   from /usr/lib/libgstreamer-0.8.so.1
#14 0xb6185604 in gst_pad_push () from /usr/lib/libgstreamer-0.8.so.1
#15 0xb628d231 in gst_equalizer_chain (pad=0x8eb68c4, data_in=0x8eb68c4)
    at gstequalizer.cpp:368
#16 0xb618851b in gst_pad_call_chain_function ()
   from /usr/lib/libgstreamer-0.8.so.1
#17 0xb6185604 in gst_pad_push () from /usr/lib/libgstreamer-0.8.so.1
#18 0xb5e216cc in ?? () from /usr/lib/gstreamer-0.8/libgstoptscheduler.so
#19 0x08bac450 in ?? ()
#20 0x08eb68c4 in ?? ()
#21 0xb5e25c01 in ?? () from /usr/lib/gstreamer-0.8/libgstoptscheduler.so
#22 0xb5e26095 in ?? () from /usr/lib/gstreamer-0.8/libgstoptscheduler.so
#23 0x0000057f in ?? ()
#24 0x00000000 in ?? ()
#25 0xb5e270a0 in ?? () from /usr/lib/gstreamer-0.8/libgstoptscheduler.so
#26 0x08bd56b0 in ?? ()
#27 0x08bd6448 in ?? ()
#28 0x08bdeed8 in ?? ()
#29 0xb61b6268 in ?? () from /usr/lib/libgstreamer-0.8.so.1
#30 0xb61b6f00 in ?? () from /usr/lib/libgstreamer-0.8.so.1
#31 0x00000161 in ?? ()
#32 0x08eb68c4 in ?? ()
#33 0x08bd2c44 in ?? ()
#34 0xb5e29384 in ?? () from /usr/lib/gstreamer-0.8/libgstoptscheduler.so
#35 0x08bd8a38 in ?? ()
#36 0x00000000 in ?? ()
#37 0xb5ae868c in ?? ()
#38 0xb5e20c91 in ?? () from /usr/lib/gstreamer-0.8/libgstoptscheduler.so
#39 0x00000000 in ?? ()
#40 0x08bdeed8 in ?? ()
#41 0xb5ae865c in ?? ()
#42 0xb62695e0 in ?? () from /usr/lib/libgstreamer-0.8.so.1
#43 0x08bdeed8 in ?? ()
#44 0x08bd2be8 in ?? ()
#45 0xb5ae868c in ?? ()
#46 0xb6179740 in gst_debug_log () from /usr/lib/libgstreamer-0.8.so.1
Previous frame inner to this frame (corrupt stack?)

I do not have the knowledge to discern the output from bt, so I hope it's useful to someone.  If there's anything else you'd like from gdb, let me know.

I'm runing a 32-bit AMD system.  I'm using gstreamer-0.8.9-r3, what I'll try next is updating to gstreamer-0.8.10.

As I mentioned above, this happens at seemingly random times, so I'm not sure what else I can say.
Comment 1 Duke 2005-05-15 18:58:09 UTC
Here's something I see in the console after the crash:

Mutex destroy failure: Device or resource busy
ICE default IO error handler doing an exit(), pid = 10757, errno = 2
Comment 2 Duke 2005-05-15 21:45:43 UTC
gstreamer-0.8.10 had no effect.  Same crash as posted above.
Comment 3 Duke 2005-05-17 01:47:01 UTC
Getting this also:

Program received signal SIG43, Real-time event 43.
[Switching to Thread 16384 (LWP 31696)]
0xb6430cd1 in select () from /lib/libc.so.6
(gdb) bt
#0  0xb6430cd1 in select () from /lib/libc.so.6
#1  0xb718a490 in ?? () from /usr/qt/3/lib/libqt-mt.so.3
#2  0x0000001c in ?? ()
#3  0xb6d02998 in QEventLoop::enterLoop () from /usr/qt/3/lib/libqt-mt.so.3
#4  0xb6d02848 in QEventLoop::exec () from /usr/qt/3/lib/libqt-mt.so.3
#5  0xb6cf0d31 in QApplication::exec () from /usr/qt/3/lib/libqt-mt.so.3
#6  0x08155373 in main (argc=-514, argv=0xfffffdfe) at main.cpp:82
Comment 4 Duke 2005-05-17 01:58:48 UTC
This seems to be coinciding with some event in Firefox.  Every time I save an image from a website using Firefox, as soon as I click the "save" button, Amarok crashes.

The gdb output in comment #3 is from one of these crashes.
Comment 5 Arthur Axel fREW Schmidt 2005-05-26 03:52:00 UTC
I want to not that I have this problem as well.

And recently it got much worse.  I installed a lot more gst plugins so that I could play m4a and other files.  Now amarok crashes before I can even get it to play a song.  I changed amarok versions to see if it would help (1.2.4) and I removed the old amarok config to see if that would help and it didn't.
Comment 6 Duke 2005-06-04 15:20:53 UTC
I've also upgraded to 1.2.4 and gstreamer 0.8.10, and I'm still having the same problem (albeit less frequently.)
Comment 7 Seb Ruiz 2005-07-01 08:12:00 UTC
This is some sort of problem deep within gstreamer, which we cannot do much about.  perhaps gstreamer doesnt like your hardware, but try switching engine or compiling from source with debug and sending the bt to gst guys