Bug 564525 - Pulseaudio daemon hangs/infinite loop.
Summary: Pulseaudio daemon hangs/infinite loop.
Keywords:
Status: CLOSED DUPLICATE of bug 559467
Alias: None
Product: Fedora
Classification: Fedora
Component: pulseaudio
Version: rawhide
Hardware: i686
OS: Linux
low
high
Target Milestone: ---
Assignee: Lennart Poettering
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 559032
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-02-13 00:37 UTC by Sam Varshavchik
Modified: 2010-02-15 13:40 UTC (History)
7 users (show)

Fixed In Version:
Clone Of: 559032
Environment:
Last Closed: 2010-02-15 13:40:46 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Sam Varshavchik 2010-02-13 00:37:52 UTC
Latest 0.9.21 errata triggers an infinite loop in the pulseaudio daemon. Reproducible when Firefox plays specific effects, under certain conditions. Downgrading to 0.9.19 restores firefox functionality.

Version-Release number of selected component (if applicable):
pulseaudio-0.9.21-4.fc12.i686

How reproducible:

always

Steps to Reproduce:

1. Install the Gmail notifier Firefox plugin

2. Configure the Gmail notifier to use /usr/share/sounds/purple/login.wav as
the new mail notifier

3. Send yourself a test message

4. Close then restart Firefox

Actual results:

The first two or three chimes of login.wav are played, then Firefox locks up.
Killing the pulseaudio process un-freezes Firefox. Killing the Firefox process
instead of pulseaudio pegs the pulseaudio process at 100% CPU, where it remains
completely unresponsive:

Tasks: 169 total,   2 running, 167 sleeping,   0 stopped,   0 zombie
Cpu(s): 25.4%us, 12.1%sy,  2.8%ni, 11.9%id, 47.4%wa,  0.1%hi,  0.2%si,  0.0%st
Mem:   2062404k total,   660156k used,  1402248k free,    30820k buffers
Swap:   506036k total,        0k used,   506036k free,   428340k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 1634 mrsam      9 -11 99.6m 5244 4304 R 95.1  0.3   0:04.43 pulseaudio
    1 root      20   0  2024  780  564 S  0.0  0.0   0:01.44 init
    2 root      15  -5     0    0    0 S  0.0  0.0   0:00.00 kthreadd
    3 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 migration/0

$ strace -p 1634

Process 1634 attached - interrupt to quit
ppoll([{fd=4, events=POLLIN}, {fd=40, events=POLLIN}, {fd=33, events=0}, {fd=20, events=POLLIN}, {fd=28, events=POLLIN}, {fd=9, events=POLLIN}, {fd=36, events=POLLIN}, {fd=35, events=POLLIN}, {fd=34, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=29, events=POLLIN}, {fd=32, events=POLLIN}, {fd=31, events=POLLIN}, {fd=30, events=POLLIN|POLLERR|POLLHUP}, {fd=30, events=0}, {fd=23, events=POLLIN}, {fd=26, events=POLLIN}, {fd=16, events=POLLIN}, {fd=19, events=POLLIN}, {fd=15, events=POLLIN|POLLERR|POLLHUP}, {fd=15, events=0}, {fd=14, events=POLLIN}, {fd=13, events=POLLIN}, {fd=6, events=POLLIN}], 25, NULL, NULL, 8) = 1 ([{fd=33, revents=POLLHUP}])
ppoll([{fd=4, events=POLLIN}, {fd=40, events=POLLIN}, {fd=33, events=0}, {fd=20, events=POLLIN}, {fd=28, events=POLLIN}, {fd=9, events=POLLIN}, {fd=36, events=POLLIN}, {fd=35, events=POLLIN}, {fd=34, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=29, events=POLLIN}, {fd=32, events=POLLIN}, {fd=31, events=POLLIN}, {fd=30, events=POLLIN|POLLERR|POLLHUP}, {fd=30, events=0}, {fd=23, events=POLLIN}, {fd=26, events=POLLIN}, {fd=16, events=POLLIN}, {fd=19, events=POLLIN}, {fd=15, events=POLLIN|POLLERR|POLLHUP}, {fd=15, events=0}, {fd=14, events=POLLIN}, {fd=13, events=POLLIN}, {fd=6, events=POLLIN}], 25, NULL, NULL, 8) = 1 ([{fd=33, revents=POLLHUP}])

...

and so on, to infinity.

Expected results:

New mail notification plays to the end.

Additional info:

Rolling back via "yum downgrade pulseaudio" fixes this problem.

Comment 1 Lennart Poettering 2010-02-15 13:40:46 UTC

*** This bug has been marked as a duplicate of bug 559467 ***


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