GNOME Bugzilla – Bug 644030
Segmentation fault when playing an album if Apple Devices Support extension enabled
Last modified: 2011-03-08 20:21:41 UTC
Created attachment 182614 [details] Stdout when running "banshee --debug" Banshee quits with a "segmentation fault" as soon as I try to play an album. Most of my music is in OGG format; I don't know if this is related. It doesn't seem to be since I can reproduce it on an mp3 album as well.The timing is a bit different - I can hear just a bit of music from the MP3 file before it falls over, but get no sound at all on the .ogg file. It doesn't matter if I play an album, or just one track. All music is stored on the local hard drive. I noted this first with version 1.8.0, from the Ubuntu 10.10 repository. I've upgraded to 1.9.4 from http://ppa.launchpad.net/banshee-team/banshee-unstable/ubuntu but get the same behaviour. Output and errors when run as "banshee --debug" is attached.
Created attachment 182615 [details] Stderr when running "banshee --debug"
Looking at the log this might be Alan country
It looks like there is an iPod attached, can you please unplug the iPod and any other media players, then attach a new Debug log?
Definitely no IPod - I don't own one. It's possible my Android phone was connected to USB but detaching it doesn't change anything. I'll attach some new logs with no attached devices, just to be sure.
Created attachment 182644 [details] stdout with --debug (no attached phone)
Created attachment 182646 [details] stderr with --debug (no attached phone)
Can you try unloading the Apple Devices Extension entirely in the preferences, just to rule it out since it complains in the log. [3 Info 18:01:09.722] AppleDeviceSource is ignoring unmounted volume /boot [3 Warn 18:01:09.732] Caught an exception - System.InvalidOperationException: Operation is not valid due to the current state of the object (in `Banshee.Dap.AppleDevice') at Banshee.Dap.AppleDevice.AppleDeviceSource.DeviceInitialize (IDevice device) [0x0026b] in /build/buildd/banshee-1.9.4/src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:119 at Banshee.Dap.DapService.FindDeviceSource (IDevice device) [0x00025] in /build/buildd/banshee-1.9.4/src/Dap/Banshee.Dap/Banshee.Dap/DapService.cs:162 [3 Info 18:01:09.745] AppleDeviceSource is ignoring unmounted volume 17 GB Filesystem [3 Warn 18:01:09.746] Caught an exception - System.InvalidOperationException: Operation is not valid due to the current state of the object (in `Banshee.Dap.AppleDevice') at Banshee.Dap.AppleDevice.AppleDeviceSource.DeviceInitialize (IDevice device) [0x0026b] in /build/buildd/banshee-1.9.4/src/Dap/Banshee.Dap.AppleDevice/Banshee.Dap.AppleDevice/AppleDeviceSource.cs:119 at Banshee.Dap.DapService.FindDeviceSource (IDevice device) [0x00025] in /build/buildd/banshee-1.9.4/src/Dap/Banshee.Dap/Banshee.Dap/DapService.cs:162
Also can you separately try to disable gapless playback?
The "Apple Devices Support" a.k.a IPod extension seems to be the culprit. If I disable it, the problem goes away (I need to restart Banshee first). I've renamed this bug to show this association. The Gapless playback setting doesn't matter.
Excellent, thank you.
I find it hard to believe that the AppleDevice extension is causing this issue as it is not attempting to load any volume as media source. The two exceptions shown above are perfectly normal and are just the extension saying "hey, these two partitions you told me to checkout aren't ipods/iphones so I'm not loading them. Ask someone else to load them". To figure out what's gone wrong you'll have to install gdb and the debug symbols for the banshee related packages and then attach the stacktrace from the crash. This could easily be the bug in ubuntu where it blows up resolving some hostnames into IP addresses.
It's not quite as easy as that as I'm not set up for Mono development, but I've hacked together a working debug environment. Your idea that it might have to do with name resolution seems to be on the mark. The traceback points to System_Net_Dns_GetHostByName and within that, the fault is inside _nss_wins_gethostbyname_r. I'll attach the trace. I don't have the full symbols, but enough to see this much. Just for fun, I removed "wins" from /etc/nsswitch.conf, and it no longer falls over even with the Apple extension enabled. So, it seems to be related to both these things - the Apple extension, and the wins name resolver.
Created attachment 182849 [details] Traceback using gdb of fault.
Perfect, that's what I thought it was :) This is not a banshee/gnome issue and there's nearly nothing we can do to work around it. If you google for the name you'll see dozens of bugs reported against different software for this issue. This was supposed to be fixed in 9.x. Obviously it hasn't been. The issue is a dupe of https://bugs.launchpad.net/ubuntu/+source/samba/+bug/659334 , so you could try pinging them about it. I'm not sure what the recommended workaround is other than what you've just done. Sorry I can't help any more.