Bug 432711 - cpu hang and ui freeze mp3/ogg playback through pulseaudio
Summary: cpu hang and ui freeze mp3/ogg playback through pulseaudio
Alias: None
Product: Fedora
Classification: Fedora
Component: gstreamer-plugins-pulse
Version: 9
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Lennart Poettering
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2008-02-13 22:59 UTC by Andrew Farris
Modified: 2008-10-24 20:45 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2008-10-24 20:45:51 UTC

Attachments (Terms of Use)
rhythmbox-crash-mp3-novtchange.txt (16.26 KB, text/plain)
2008-02-13 22:59 UTC, Andrew Farris
no flags Details
rhythmbox_crash_change_vt1.txt (14.18 KB, text/plain)
2008-02-13 23:02 UTC, Andrew Farris
no flags Details
rhythmbox-crash-playing.txt (16.18 KB, text/plain)
2008-02-13 23:07 UTC, Andrew Farris
no flags Details
rhythmbox_crash_after_galeon_sigsegv.txt (10.75 KB, text/plain)
2008-02-13 23:11 UTC, Andrew Farris
no flags Details
rhythmbox-after-firefox-kill-in-gdb.txt (16.35 KB, text/plain)
2008-02-14 00:47 UTC, Andrew Farris
no flags Details
rhythmbox-crash-vtswitch-and-pactl-list.txt (23.38 KB, text/plain)
2008-02-14 01:15 UTC, Andrew Farris
no flags Details
rhythmbox-crash-oggvorbis-novtchange.txt (15.82 KB, text/plain)
2008-02-14 20:11 UTC, Andrew Farris
no flags Details

Description Andrew Farris 2008-02-13 22:59:46 UTC
Description of problem:
During playback of an mp3 format file rhythmbox occasionally crashes,
accompanied by a 100% cpu use hang and ui freeze.  There is no output I've seen
yet, but backtraces are attached.

There are two situations in which I'm seeing this type of freeze, both with the
100% cpu hang and unresponsive ui.

1- playback gets blocked by changing VTs making rhythmbox not in the active
session, rhythmbox continues trying to play the track, track time continues
 - when rhythmbox gets focus again in the active session it sometimes continues
to play normally
 - sometimes it freezes up with the cpu hang and the track time stops, the ui is
unresponsive, and rhythmbox must be killed

2- rhythmbox is playing the track normally in the active session, then suddenly
it stops playing, ui becomes unresponsive, track time stops

In both cases it is not just a lack of sound output.  The blocked sound output
while in the inactive session is expected right now, but rhythmbox needs to
remain responsive when the X session is active again.

Version-Release number of selected component (if applicable):


How reproducible:
Sporadic crashes, cannot trigger it very reliably

Steps to Reproduce:
1. play track in rhythmbox in active X session
2. change to a virtual terminal
3. return to X session

Backtrace #1 is from situation 2 above, no virtual terminal switching, rhythmbox
stops while the X session is active.

Comment 1 Andrew Farris 2008-02-13 22:59:46 UTC
Created attachment 294851 [details]

Comment 2 Andrew Farris 2008-02-13 23:02:51 UTC
Created attachment 294852 [details]

This is changing from X session to VT1 then back to X, no playback while on
VT1, crash noticed when returned to X, cpu spinning, no track time changing

Comment 3 Andrew Farris 2008-02-13 23:07:16 UTC
Created attachment 294853 [details]

This is a crash again for situation 1 where rhythmbox was playing in active X
session, no vt change, suddenly it just stopped playing.  The first backtrace
posted is the most recent.  The debug symbols were not all installed for the vt
change backtrace.  I'll try to trigger that again but it hasn't happened in a
few days, and Lennart Poettering gave me a couple things to look for regarding
pa device access in that VT change case.

Comment 4 Andrew Farris 2008-02-13 23:11:47 UTC
Created attachment 294854 [details]

Sorry, comment 3 is for situation 2, and so is this one.  This was again
rhythmbox crashing without change in VT, or anything else I know of effecting
the device access.  This occurred right after Galeon crashed, while debugging
bug# 431162, so this is questionable (cpu was already spinning from galeon,
could have effected this crash).

Comment 5 Andrew Farris 2008-02-14 00:47:49 UTC
Created attachment 294859 [details]

Here is another crash after killing another process.  Debugging firefox in gdb,
after firefox is hanging, I backtrace firefox while rhythmbox is playing
(everything ok so far).  Then, I kill firefox from within gdb, and immediately
rhythmbox hangs.  This backtrace is from as soon as I could attach to it after
that.  Basically, the same situation as the galeon crash above.

Comment 6 Andrew Farris 2008-02-14 01:15:53 UTC
Created attachment 294861 [details]

Rhythmbox crash after VT switching (it worked fine 3 or 4 times, seemingly just
streaming the song while I was viewing VT1, then playing when I returned (the
position in the song did move, so not paused during that time).  Then after
doing the switch again and returning rhythmbox was frozen.

The attached has the backtrace (attached after the freeze) and 'pactl list'
showing devices not suspended, and 'getfacl /dev/snd/*'.

Comment 7 Andrew Farris 2008-02-14 20:11:48 UTC
Created attachment 294944 [details]

Occurs with ogg vorbis files as well, so this does not look like an mp3 decoder
related issue.

Comment 8 Andrew Farris 2008-02-15 21:05:05 UTC
Another interesting thing to note, these crashes are happening frequently RIGHT
AFTER some other events in the system, and so fast that they seem related.  For
instance, the kill of a program being debugged in gdb, or crashing immediately
after yum finishes a set of updates/installs.

I just installed imlib, feh, gimmage, and qiv (image viewers) and as soon as the
'Complete!' message from yum showed up rhythmbox hung itself.  I had just tried
to update all my packages and it failed with a yum bug, but did not crash
rhythmbox, so its very circumstantial.

Comment 9 Andrew Farris 2008-02-18 23:51:24 UTC
More details.  Banshee has its own set of problems (not rebuilt in rawhide since
fc8 build) but it is playing mp3 files through gstreamer and pulseaudio just
fine.  I cannot cause banshee to hang like this either by switching consoles or
just playing for hours.  With the very same configuration I can change to
rhythmbox playing and hang it very quickly.

Comment 10 Bastien Nocera 2008-03-28 14:37:54 UTC
Reassigning to gstreamer-plugins-pulse, as it should fail nicely if PulseAudio
loses its access rights on the sound device.

Comment 11 Bug Zapper 2008-05-14 05:11:07 UTC
Changing version to '9' as part of upcoming Fedora 9 GA.
More information and reason for this action is here:

Comment 12 Lennart Poettering 2008-10-24 20:45:51 UTC
The pulse plugin from current gstreamer-plugins-good fixes this issue.

Note You need to log in before you can comment on or make changes to this bug.