Bug#353071: rhythmbox: repeatedly dies with Illegal Instruction error, during startup

Martin-Éric Racine q-funk at iki.fi
Sun Mar 12 15:36:12 UTC 2006


reassign 353071 gstreamer0.10-plugins-base
merge 353071 356485
severity 353071 important
thanks

to, 2006-02-16 kello 10:20 +0100, Loïc Minier kirjoitti:
>  This is normal behavior of liboil, if you're running rhythmbox from gdb
>  please use:
>     handle SIGILL nostop noprint
> 
>  If you still get a crash in liboil, please try exporting:
>     OIL_CPU_FLAGS=0

Exporting that, I instead get:

Program received signal SIGILL, Illegal instruction.
[Switching to Thread 932469504 (LWP 26408)]
0x3891e38c in visual_param_container_add_many () from /usr/lib/libvisual.so.0
(gdb) bt
#0  0x3891e38c in visual_param_container_add_many () from /usr/lib/libvisual.so.0
#1  0x3891e42c in visual_cpu_initialize () from /usr/lib/libvisual.so.0
#2  0x3891a058 in visual_init () from /usr/lib/libvisual.so.0
#3  0x388f2d84 in gst_visual_get_type () from /usr/lib/gstreamer-0.10/libgstlibvisual.so
#4  0x36605530 in _gst_plugin_initialize () from /usr/lib/libgstreamer-0.10.so.0
#5  0x36605be0 in gst_plugin_load_file () from /usr/lib/libgstreamer-0.10.so.0
#6  0x3660b3b8 in gst_registry_lookup () from /usr/lib/libgstreamer-0.10.so.0
#7  0x365cdb9c in gst_init () from /usr/lib/libgstreamer-0.10.so.0
#8  0x374c5308 in g_option_context_parse () from /usr/lib/libglib-2.0.so.0
#9  0x365cd1b8 in gst_init_check () from /usr/lib/libgstreamer-0.10.so.0
#10 0x365cd244 in gst_init () from /usr/lib/libgstreamer-0.10.so.0
#11 0x1001fb08 in main ()
(gdb)

If I add the signal handling instruction to GDB suggested above, I
instead get:

libvisual WARNING: no progname: visual_plugin_get_list(): Failed to add the /usr/lib/libvisual/transform directory to the plugin registry
** (rhythmbox:21196): WARNING **: Could not initalize the HAL context: (null)
** (rhythmbox:21196): WARNING **: Could not initalize the HAL context: (null)

...which makes Rhythmbox work again.   

Analyzing this, the crash is consistent with the only significant change
between 0.10.1 and 0.10.3, which is the addition of the visual plug-in.

Creating the missing /usr/lib/libvisual/transform directory does not fix
the bug, however. Rhythmbox still fails to start normally (without GDB).

As another test, starting Rhythmbox from an xterm where the OILCPU_FLAG
above is exported, indeed works.

So I guess this narrows down the problem to something liboil-related.

-- 
Martin-Éric Racine
http://q-funk.iki.fi





More information about the Pkg-gnome-maintainers mailing list