Songbird hangs on song change

Bug #344196 reported by Mike Gillan
2
Affects Status Importance Assigned to Milestone
Songbird
New
High
Ubuntu
Invalid
Undecided
Unassigned

Bug Description

(aside, I attempted to submit the bug with package 'songbird' but bugs.launchpad.net tells me "songbird" does not exist in Ubuntu. Please choose a different package. If you're unsure, please select "I don't know")

In songbird 1.1.1-0ubuntu1~fta4~intrepid (release 8.10, kernel 2.6.27-11-generic) I am experiencing process hangs when the song changes (song ends, the song progress bar jumps back to the beginning as if to play the next song, but the next song does not queue and songbird hangs at that point). This occurs after a few song changes, usually after the third or fourth song, but it varies. I have no add-ons enabled (in fact I uninstalled them all to try to isolate the problem) and no funny file systems are mounted - the tracks are all on a local EXT3 FS.

I ran an strace on the process (strace -p <PID of songbird>) and got the following output:

gettimeofday({1237292173, 724569}, NULL) = 0
gettimeofday({1237292173, 724610}, NULL) = 0
poll([{fd=4, events=POLLIN}, {fd=3, events=POLLIN}, {fd=10, events=POLLIN|POLLPRI}, {fd=14, events=POLLIN|POLLPRI}, {fd=16, events=POLLIN|POLLPRI}, {fd=18, events=POLLIN|POLLPRI}, {fd=12, events=POLLIN|POLLPRI}, {fd=37, events=POLLIN}, {fd=36, events=POLLIN}, {fd=20, events=POLLIN}], 10, 0) = 0
select(4, [3], [3], NULL, NULL) = 1 (out [3])
writev(3, [{"$\7\1\0&\7\2\0\246\1\0\0", 12}], 1) = 12
select(4, [3], [], NULL, NULL) = 1 (in [3])
read(3, "\1\1\24:\0\0\0\0\246\1\0\0\v\0\300\4\343\1r\1\343\1r\1"..., 4096) = 32
read(3, 0xb7c81094, 4096) = -1 EAGAIN (Resource temporarily unavailable)
select(4, [3], [3], NULL, NULL) = 1 (out [3])
writev(3, [{"&\7\2\0\v\0\300\4", 8}], 1) = 8
select(4, [3], [], NULL, NULL) = 1 (in [3])
read(3, "\1\1\25:\0\0\0\0\246\1\0\0=\0\300\4\343\1r\1\336\1>\1\20"..., 4096) = 32
read(3, 0xb7c81094, 4096) = -1 EAGAIN (Resource temporarily unavailable)
select(4, [3], [3], NULL, NULL) = 1 (out [3])
writev(3, [{"&\7\2\0=\0\300\4", 8}], 1) = 8
select(4, [3], [], NULL, NULL) = 1 (in [3])
read(3, "\1\1\26:\0\0\0\0\246\1\0\0\0\0\0\0\343\1r\1\336\1%\1\20"..., 4096) = 32
read(3, 0xb7c81094, 4096) = -1 EAGAIN (Resource temporarily unavailable)
select(4, [3], [3], NULL, NULL) = 1 (out [3])
writev(3, [{"%\7\1\0", 4}], 1) = 4
read(3, 0xb7c81094, 4096) = -1 EAGAIN (Resource temporarily unavailable)
gettimeofday({1237292173, 725983}, NULL) = 0
gettimeofday({1237292173, 726022}, NULL) = 0
gettimeofday({1237292173, 726059}, NULL) = 0
poll([{fd=4, events=POLLIN}, {fd=3, events=POLLIN}, {fd=10, events=POLLIN|POLLPRI}, {fd=14, events=POLLIN|POLLPRI}, {fd=16, events=POLLIN|POLLPRI}, {fd=18, events=POLLIN|POLLPRI}, {fd=12, events=POLLIN|POLLPRI}, {fd=37, events=POLLIN}, {fd=36, events=POLLIN}, {fd=20, events=POLLIN}], 10, 0) = 0
select(4, [3], [3], NULL, NULL) = 1 (out [3])
writev(3, [{"$\7\1\0&\7\2\0\246\1\0\0", 12}], 1) = 12
select(4, [3], [], NULL, NULL) = 1 (in [3])
read(3, "\1\1\31:\0\0\0\0\246\1\0\0\v\0\300\4\343\1r\1\343\1r\1"..., 4096) = 32
read(3, 0xb7c81094, 4096) = -1 EAGAIN (Resource temporarily unavailable)
select(4, [3], [3], NULL, NULL) = 1 (out [3])
writev(3, [{"&\7\2\0\v\0\300\4", 8}], 1) = 8
select(4, [3], [], NULL, NULL) = 1 (in [3])
read(3, "\1\1\32:\0\0\0\0\246\1\0\0=\0\300\4\343\1r\1\336\1>\1\20"..., 4096) = 32
read(3, 0xb7c81094, 4096) = -1 EAGAIN (Resource temporarily unavailable)
select(4, [3], [3], NULL, NULL) = 1 (out [3])
writev(3, [{"&\7\2\0=\0\300\4", 8}], 1) = 8
select(4, [3], [], NULL, NULL) = 1 (in [3])
read(3, "\1\1\33:\0\0\0\0\246\1\0\0\0\0\0\0\343\1r\1\336\1%\1\20"..., 4096) = 32
read(3, 0xb7c81094, 4096) = -1 EAGAIN (Resource temporarily unavailable)
select(4, [3], [3], NULL, NULL) = 1 (out [3])
writev(3, [{"%\7\1\0", 4}], 1) = 4
read(3, 0xb7c81094, 4096) = -1 EAGAIN (Resource temporarily unavailable)
gettimeofday({1237292173, 727228}, NULL) = 0
...

Seems to go on forever, then my strace hangs too (completely halting my X session) and I have to SSH in to kill songbird to get my session back. If I click around in songbird and then run strace again I get

futex(0xa89b87f4, 0x80 /* FUTEX_??? */, 2

(strace hangs with the cursor sitting after the '2')

This problem is easily reproducible for me, so please let me know if you need any more information. I'd love to get this fixed (it's a major annoyance!) and will help any way I can.

Cheers,
Mike Gillan

ProblemType: Bug
Architecture: i386
DistroRelease: Ubuntu 8.10
NonfreeKernelModules: nvidia
Package: songbird 1.1.1-0ubuntu1~fta4~intrepid
ProcEnviron:
 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
 LANG=en_CA.UTF-8
 SHELL=/bin/bash
SourcePackage: songbird
Uname: Linux 2.6.27-11-generic i686
UnreportableReason: This is not a genuine Ubuntu package

Tags: apport-bug
Revision history for this message
Mike Gillan (mike-gillan) wrote :
Revision history for this message
stevel (steve-grommit) wrote :

This is being tracked in our upstream (Songbird) bugzilla as bug 15401:
http://bugzilla.songbirdnest.com/show_bug.cgi?id=15401

It seems to be affecting both the Ubuntu & Fedora packages. Our current suspicion is locally-applied GStreamer patches (though we don't have anything conclusive yet)

Changed in songbird:
status: Unknown → New
Revision history for this message
Linard Verstraete (linardv) wrote :

I can confirm this, I'm experiencing exactly the same problem.

I shall try to provide some additional info:

* Platform on which I preformed some tests *
(X)ubuntu 8.10 (32-bit) - original fresh CD-install

* Packages I tested *
Songbird 1.0.0 - installed from getdeb.net (Exactly the same problem occurs)
Songbird 1.1.1 - installed from getdeb.net (Exactly the same problem occurs)

* When launching Songbird, the relevant processes, with there waiting channels are: *
Process: /bin/sh ./songbird
Waiting-channel: do_wait

Process: /bin/sh /usr/bin/songbird
Waiting-channel: do_wait

Process: ././songbird-bin
Waiting-channel: do_poll

* When Songbird hangs as described by bug description: *
Process: /bin/sh ./songbird
Waiting-channel: do_wait

Process: /bin/sh /usr/bin/songbird
Waiting-channel: do_wait

Process: ././songbird-bin
Waiting-channel: futex_wait

* Library size *
Only tested with a size < 100.

* File-system *
Only tested on a EXT3 of 9 GiB.

* Notes *
I can only reproduce this bug when playing .flac files. I can play (replay, skip, ...) .mp3 files without any problem.
I have tested all .flac files with the "flac -t"-command and they were all oké.
Also it seems that the bug happens on random (.flac) songs, and the amount of successfull played song before it crashes varies too. Mine amount ranged between 1 and 7 songs.

Revision history for this message
John Vivirito (gnomefreak) wrote :

we do not support songbird and wont until upstream finishes all the work before we can support it. Upstream seems to have stalled out on it or dont care enough to fix it. either way its not in repos for a good reason.

Changed in ubuntu:
status: New → Invalid
Changed in songbird:
importance: Unknown → High
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.