Re: Launching Rygel on headless server



On 28 May 2012 09:48, Jens Georg <mail jensge org> wrote:
> On Mo, 2012-05-28 at 01:38 +0100, Cefn Hoile wrote:
>
> Yes, these D-Bus criticals are not really criticals, they will be made
> less violent in the next release.
>
> You only need D-Bus for Pulseaudio's "native" integration, if you use
> GstLauch like in your config then there's no need for D-Bus.
>
> I don't think the segfault is related to D-Bus; I suspect it originates
> from either the Playbin or the MediaExport plugin. Can you try to get a
> backtrace for it?
>
> Rygel works fine on ARM.
>
>> I don't know if it can be strictly 'packaging' since an invocation of
>> dbus-launch somehow attempts to initiate X11 and fails. This is
>> consistent with its packaging, but not determined by it. The actual
>> logic of dbus-launch (direct from the debian wheezy armel repo) must
>> be somehow dependent on X as well.
>>
>> Neither explains the segmentation fault reported some time after
>> dbus-launch fails.
>>
>> I saw in another thread that these DBus warnings might be able to be
>> ignored, but it seems like the Segfault is what finally kills Rygel in
>> both cases, with or without dbus-launch.
>>
>> I guess you are saying I'll need dbus-launch in order to successfully
>> serve wav data from pulseaudio via Rygel. However, I suspect the
>> segfault is worth figuring out anyway for the stability of the package
>> in general. Is there ARM support?
>>
>> I'll see if I can find dbus-launch via some other route to satisfy
>> Rygel and workaround the segfault. Does that make sense?
>>
>> Cefn
>> http://cefn.com
>>
>> On 27 May 2012 15:28, Zeeshan Ali (Khattak) <zeeshanak gnome org> wrote:
>> > On Sun, May 27, 2012 at 2:04 PM, Cefn Hoile <mail gnome org cefn com> wrote:
>> >> Here's the full log of the failure when dbus-launch isn't available,
>> >> which also finishes with a segmentation fault.
>> >>
>> >> mpd@gardner:/root$ rygel
>> >> Rygel-Message: New plugin 'GstLaunch' available
>> >>
>> >> (rygel:2187): MediaExport-WARNING **: Failed to attach to D-Bus
>> >> session bus: Command line `dbus-launch
>> >> --autolaunch=3bc3212927ef79ca1c9e685300000b5d --binary-syntax
>> >> --close-stderr' exited with non-zero exit status 1: Autolaunch error:
>> >> X11 initialization failed.\n
>> >>
>> >> (rygel:2187): GStreamer-CRITICAL **: gst_bus_create_watch: assertion
>> >> `GST_IS_BUS (bus)' failed
>> >>
>> >> (rygel:2187): GLib-CRITICAL **: g_source_set_callback: assertion
>> >> `source != NULL' failed
>> >> Segmentation fault
>> >>
>> >> On 27 May 2012 11:21, Cefn Hoile <mail gnome org cefn com> wrote:
>> >>> Hi all,
>> >>>
>> >>> I'm trying to launch Rygel to serve my MPD pulseaudio stream from a
>> >>> Pogoplug to the rest of my home network, running Debian Wheezy.
>> >>>
>> >>> Rygel versioning reports...
>> >>> Rygel 0.14.1
>> >>>
>> >>> This is a machine without XWindows. I was therefore disappointed to
>> >>> find that Rygel was throwing errors trying to invoke dbus-launch,
>> >>> which is now in the dbus-x11 package,
>> >
>> > That  would be a packaging/distribution problem I believe since rygel
>> > and pulseaudio only need dbus to talk to each other and neither rygel,
>> > pulseaudio nor dbus really require X.
>> >
>> > --
>> > Regards,
>> >
>> > Zeeshan Ali (Khattak)
>> > FSF member#5124
>> _______________________________________________
>> rygel-list mailing list
>> rygel-list gnome org
>> https://mail.gnome.org/mailman/listinfo/rygel-list
>>
>
>

I installed rygel-dbg and then followed the instructions at
https://wiki.ubuntu.com/Backtrace to create the attached file
(hopefully) detailing the crash.
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "arm-linux-gnueabi".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/rygel...Reading symbols from /usr/lib/debug/usr/bin/rygel...(no debugging symbols found)...done.
(no debugging symbols found)...done.
(gdb) andle SIG33 pass nostop noprint
(gdb) [1@h
Signal        Stop	Print	Pass to program	Description
SIG33         No	No	Yes		Real-time event 33
(gdb) set pagination 0
(gdb) run
Starting program: /usr/bin/rygel 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabi/libthread_db.so.1".
[New Thread 0x412273e0 (LWP 2390)]
Rygel-Message: New plugin 'GstLaunch' available

(rygel:2386): MediaExport-CRITICAL **: file rygel-media-export-dbus-service.c: line 156: unexpected error: Error spawning command line `dbus-launch --autolaunch=3bc3212927ef79ca1c9e685300000b5d --binary-syntax --close-stderr': Failed to execute child process "dbus-launch" (No such file or directory) (g-exec-error-quark, 8)

(rygel:2386): GStreamer-CRITICAL **: gst_bus_create_watch: assertion `GST_IS_BUS (bus)' failed

(rygel:2386): GLib-CRITICAL **: g_source_set_callback: assertion `source != NULL' failed

Program received signal SIGSEGV, Segmentation fault.
0x405ee68c in g_source_attach () from /lib/arm-linux-gnueabi/libglib-2.0.so.0
(gdb) backtrace full
#0  0x405ee68c in g_source_attach () from /lib/arm-linux-gnueabi/libglib-2.0.so.0
No symbol table info available.
#1  0x40189cc4 in gst_discoverer_start () from /usr/lib/arm-linux-gnueabi/libgstpbutils-0.10.so.0
No symbol table info available.
#2  0x4127694c in rygel_media_export_metadata_extractor_construct () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#3  0x412769c8 in rygel_media_export_metadata_extractor_new () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#4  0x41286c54 in rygel_media_export_harvester_construct () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#5  0x41286f2c in rygel_media_export_harvester_new () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#6  0x4127d558 in rygel_media_export_root_container_construct () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#7  0x4127dbf4 in rygel_media_export_root_container_new () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#8  0x41278dec in rygel_media_export_root_container_get_instance () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#9  0x4125a168 in rygel_media_export_plugin_construct () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#10 0x4125a234 in rygel_media_export_plugin_new () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#11 0x4125974c in module_init () from /usr/lib/rygel-1.0/librygel-media-export.so
No symbol table info available.
#12 0x00052a84 in rygel_plugin_loader_load_module_from_file ()
No symbol table info available.
#13 0x00052460 in rygel_plugin_loader_load_modules_from_dir_co ()
No symbol table info available.
#14 0x00051b4c in rygel_plugin_loader_load_modules_from_dir_ready ()
No symbol table info available.
#15 0x40474960 in ?? () from /usr/lib/arm-linux-gnueabi/libgio-2.0.so.0
No symbol table info available.
#16 0x40474960 in ?? () from /usr/lib/arm-linux-gnueabi/libgio-2.0.so.0
No symbol table info available.
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb) info registers
r0             0x0	0
r1             0xedb40	973632
r2             0x94fc1700	2499548928
r3             0x0	0
r4             0x10f0d8	1110232
r5             0x10f0f8	1110264
r6             0x4027e158	1076355416
r7             0xedb40	973632
r8             0x0	0
r9             0x0	0
r10            0xedb40	973632
r11            0xbefff684	3204445828
r12            0x405ee68c	1079961228
sp             0xbefff5e8	0xbefff5e8
lr             0x40189cc4	1075354820
pc             0x405ee68c	0x405ee68c <g_source_attach>
cpsr           0x60000010	1610612752
(gdb) x/16i $pc
=> 0x405ee68c <g_source_attach>:	ldr	r3, [r0, #16]
   0x405ee690 <g_source_attach+4>:	cmp	r3, #0
   0x405ee694 <g_source_attach+8>:	push	{r4, r5, r6, lr}
   0x405ee698 <g_source_attach+12>:	mov	r6, r0
   0x405ee69c <g_source_attach+16>:	mov	r5, r1
   0x405ee6a0 <g_source_attach+20>:	beq	0x405ee6d4 <g_source_attach+72>
   0x405ee6a4 <g_source_attach+24>:	ldr	r1, [pc, #172]	; 0x405ee758 <g_source_attach+204>
   0x405ee6a8 <g_source_attach+28>:	ldr	r0, [pc, #172]	; 0x405ee75c <g_source_attach+208>
   0x405ee6ac <g_source_attach+32>:	ldr	r2, [pc, #172]	; 0x405ee760 <g_source_attach+212>
   0x405ee6b0 <g_source_attach+36>:	add	r1, pc, r1
   0x405ee6b4 <g_source_attach+40>:	add	r0, pc, r0
   0x405ee6b8 <g_source_attach+44>:	add	r1, r1, #116	; 0x74
   0x405ee6bc <g_source_attach+48>:	add	r2, pc, r2
   0x405ee6c0 <g_source_attach+52>:	bl	0x405f7a7c <g_return_if_fail_warning>
   0x405ee6c4 <g_source_attach+56>:	mov	r4, #0
   0x405ee6c8 <g_source_attach+60>:	mov	r0, r4
(gdb) thread apply all backtrace

Thread 2 (Thread 0x412273e0 (LWP 2390)):
#0  0x406c3b4c in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabi/libpthread.so.0
#1  0x40630abc in g_cond_wait_until () from /lib/arm-linux-gnueabi/libglib-2.0.so.0
#2  0x405c328c in ?? () from /lib/arm-linux-gnueabi/libglib-2.0.so.0
Cannot access memory at address 0xffffffff
#3  0x405c328c in ?? () from /lib/arm-linux-gnueabi/libglib-2.0.so.0
Cannot access memory at address 0xffffffff
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0x409d5560 (LWP 2386)):
#0  0x405ee68c in g_source_attach () from /lib/arm-linux-gnueabi/libglib-2.0.so.0
#1  0x40189cc4 in gst_discoverer_start () from /usr/lib/arm-linux-gnueabi/libgstpbutils-0.10.so.0
#2  0x4127694c in rygel_media_export_metadata_extractor_construct () from /usr/lib/rygel-1.0/librygel-media-export.so
#3  0x412769c8 in rygel_media_export_metadata_extractor_new () from /usr/lib/rygel-1.0/librygel-media-export.so
#4  0x41286c54 in rygel_media_export_harvester_construct () from /usr/lib/rygel-1.0/librygel-media-export.so
#5  0x41286f2c in rygel_media_export_harvester_new () from /usr/lib/rygel-1.0/librygel-media-export.so
#6  0x4127d558 in rygel_media_export_root_container_construct () from /usr/lib/rygel-1.0/librygel-media-export.so
#7  0x4127dbf4 in rygel_media_export_root_container_new () from /usr/lib/rygel-1.0/librygel-media-export.so
#8  0x41278dec in rygel_media_export_root_container_get_instance () from /usr/lib/rygel-1.0/librygel-media-export.so
#9  0x4125a168 in rygel_media_export_plugin_construct () from /usr/lib/rygel-1.0/librygel-media-export.so
#10 0x4125a234 in rygel_media_export_plugin_new () from /usr/lib/rygel-1.0/librygel-media-export.so
#11 0x4125974c in module_init () from /usr/lib/rygel-1.0/librygel-media-export.so
#12 0x00052a84 in rygel_plugin_loader_load_module_from_file ()
#13 0x00052460 in rygel_plugin_loader_load_modules_from_dir_co ()
#14 0x00051b4c in rygel_plugin_loader_load_modules_from_dir_ready ()
#15 0x40474960 in ?? () from /usr/lib/arm-linux-gnueabi/libgio-2.0.so.0
#16 0x40474960 in ?? () from /usr/lib/arm-linux-gnueabi/libgio-2.0.so.0
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb) quit
A debugging session is active.

	Inferior 1 [process 2386] will be killed.

Quit anyway? (y or n) 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]