Re: Launching Rygel on headless server
- From: Cefn Hoile <mail gnome org cefn com>
- To: Jens Georg <mail jensge org>
- Cc: rygel-list gnome org
- Subject: Re: Launching Rygel on headless server
- Date: Mon, 28 May 2012 10:20:05 +0100
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]