Bug 520403 - Intel HDA audio: pops on initialization / sleep of pulseaudio... (very annoying)
Summary: Intel HDA audio: pops on initialization / sleep of pulseaudio... (very annoying)
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 12
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Jaroslav Kysela
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 524187 (view as bug list)
Depends On:
Blocks: 571768
TreeView+ depends on / blocked
 
Reported: 2009-08-31 10:57 UTC by Chris Ward
Modified: 2010-12-09 20:19 UTC (History)
15 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 571768 (view as bug list)
Environment:
Last Closed: 2009-11-20 10:22:25 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Chris Ward 2009-08-31 10:57:36 UTC
Description of problem:

I'm got a fully updated F12 rawhide bare-metal install and I'm hearing pops on occasion. This isn't happening on the same machine using F11.

Here's the pulseaudio -vvv output during the reproducer case. This pop occurs when i launch and close the 'Sound preferences dialog' box. It happens when i use any sound application.

The closing pop occurs around the time 'D: module-udev-detect.c: /dev/snd/controlC0 is accessible: yes' line shows up. Not sure when the initialization pop hits.

It's also popping when i start/stop pulseaudio deamon i'm realizing...

I: client.c: Created 7 "Native client (UNIX socket client)"
D: protocol-native.c: Protocol version: remote 16, local 16
I: protocol-native.c: Got credentials: uid=500 gid=500 success=1
D: protocol-native.c: SHM possible: yes
D: protocol-native.c: Negotiated SHM: yes
D: module-augment-properties.c: Looking for .desktop file for gnome-volume-control
D: module-stream-restore.c: Database contains entry for stream sink-input-by-application-name:Songbird of wrong size 394 != 522. Probably due to uprade, ignoring.
D: module-stream-restore.c: Not restoring device for stream source-output-by-application-id:org.gnome.VolumeControl, because already set
D: module-intended-roles.c: Not setting device for stream Peak detect, because already set.
D: source.c: Suspend cause of source alsa_input.pci-0000_00_1b.0.analog-stereo is 0x0000, resuming
D: reserve-wrap.c: Successfully acquired reservation lock on device 'Audio0'
I: alsa-source.c: Trying resume...
D: alsa-util.c: Maximum hw buffer size is 23777 ms
D: alsa-source.c: hwbuf_unused=0
D: alsa-source.c: setting avail_min=87751
I: alsa-source.c: Resumed successfully...
D: module-suspend-on-idle.c: Source alsa_input.pci-0000_00_1b.0.analog-stereo becomes idle, timeout in 5 seconds.
D: module-suspend-on-idle.c: Source alsa_input.pci-0000_00_1b.0.analog-stereo becomes busy.
D: resampler.c: Channel matrix:
D: resampler.c:        I00   I01 
D: resampler.c:     +------------
D: resampler.c: O00 | 1.000 1.000
I: remap.c: Using generic matrix remapping
I: resampler.c: Using resampler 'peaks'
I: resampler.c: Using float32le as working format.
D: memblockq.c: memblockq requested: maxlength=33554432, tlength=0, base=4, prebuf=0, minreq=1 maxrewind=0
D: memblockq.c: memblockq sanitized: maxlength=33554432, tlength=33554432, base=4, prebuf=0, minreq=4 maxrewind=0
I: source-output.c: Created output 2 "Peak detect" on alsa_input.pci-0000_00_1b.0.analog-stereo with sample spec float32le 1ch 25Hz and channel map mono
D: memblockq.c: memblockq requested: maxlength=4194304, tlength=0, base=4, prebuf=1, minreq=0 maxrewind=0
D: memblockq.c: memblockq sanitized: maxlength=4194304, tlength=4194304, base=4, prebuf=4, minreq=4 maxrewind=0
I: protocol-native.c: Final latency 60.00 ms = 40.00 ms + 20.00 ms
D: alsa-source.c: latency set to 20.00ms
D: alsa-source.c: hwbuf_unused=349240
D: alsa-source.c: setting avail_min=442
D: alsa-source.c: latency set to 20.00ms
D: alsa-source.c: hwbuf_unused=349240
D: alsa-source.c: setting avail_min=442
D: core-subscribe.c: Dropped redundant event due to change event.
D: reserve-wrap.c: Device lock status of reserve-monitor-wrapper@Audio0 changed: not busy
D: alsa-source.c: hwbuf_unused=0
D: alsa-source.c: setting avail_min=87751
D: module-suspend-on-idle.c: Source alsa_input.pci-0000_00_1b.0.analog-stereo becomes idle, timeout in 5 seconds.
D: module-suspend-on-idle.c: Source alsa_input.pci-0000_00_1b.0.analog-stereo becomes idle, timeout in 5 seconds.
D: core.c: Hmm, no streams around, trying to vacuum.
I: source-output.c: Freeing output 2 "Peak detect"
I: client.c: Freed 7 "GNOME Volume Control"
I: protocol-native.c: Connection died.
I: module-suspend-on-idle.c: Source alsa_input.pci-0000_00_1b.0.analog-stereo idle for too long, suspending ...
D: source.c: Suspend cause of source alsa_input.pci-0000_00_1b.0.analog-stereo is 0x0004, suspending
I: alsa-source.c: Device suspended...
D: reserve-wrap.c: Device lock status of reserve-monitor-wrapper@Audio0 changed: not busy
D: module-udev-detect.c: /dev/snd/controlC0 is accessible: yes



Version-Release number of selected component (if applicable):
uname -a
Linux cward.englab.brq.redhat.com 2.6.31-0.125.4.2.rc5.git2.fc12.x86_64 #1 SMP Tue Aug 11 21:00:45 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

rpm -qa pulseaudio
pulseaudio-0.9.16-11.test6.fc12.x86_64

rpm -qa alsa\*
alsa-utils-1.0.20-4.fc12.x86_64
alsa-plugins-pulseaudio-1.0.20-5.fc12.i686
alsa-lib-1.0.20-2.fc12.x86_64
alsa-lib-1.0.20-2.fc12.i686
alsa-plugins-pulseaudio-1.0.20-5.fc12.x86_64


lsmod |grep hda
snd_hda_codec_analog    78528  1 
snd_hda_intel          31528  3 
snd_hda_codec          80448  2 snd_hda_codec_analog,snd_hda_intel
snd_hwdep               9792  1 snd_hda_codec
snd_pcm                90360  3 snd_hda_intel,snd_hda_codec
snd                    74776  11 snd_hda_codec_analog,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_timer
snd_page_alloc         10464  2 snd_hda_intel,snd_pcm




How reproducible:
right click on the sound icon in the tool bar and open up preferences. You'll hear a pop. then close it. you'll hear a second pop after a short delay.

stop and start the pulseaudio daemon

Expected results:
no popping

Comment 1 Chris Ward 2009-09-03 08:22:18 UTC
Any word here? It's soooo annoying to keep hearing the pops every few seconds... anytime a sound event happens... it seems.

Comment 2 Lennart Poettering 2009-09-03 14:51:31 UTC
That pop seems to happen each time the sound card is closed or opened. This needs to be fixed in the sound driver.

Comment 3 Chris Ward 2009-09-03 15:06:24 UTC
Thanks Lennart for reassigning the component; i wasn't sure.

Comment 4 Barry Smith 2009-09-08 01:40:10 UTC
I've had this kind of pop off and on since I installed Fedora 11 a few weeks after it came out this summer. It only happened when I suspended the computer (most of the time). Now it's happening frequently - maybe once every 10-15 min. I did install the latest kernel upgrade this morning - so now I'm at 2.6.30.5-43.fc11.x86_64, up from 2.6.29.6-217.2.16. However, there was also a pulseaudio upgrade, and a gstreamer upgrade this morning. I'm running a Dell Latitude E6500 laptop. The sound card is an Intel 82801I (ICH9 Family) HD Audio Controller. The CPU is an Intel Core 2 Duo P9600, 2.66 GHz, 1066 MHz, 6M L2 Cache.

rpm -qa | grep pulseaudio
pulseaudio-0.9.15-17.fc11.x86_64
pulseaudio-module-gconf-0.9.15-17.fc11.x86_64
pulseaudio-libs-0.9.15-17.fc11.x86_64
pulseaudio-libs-glib2-0.9.15-17.fc11.x86_64
pulseaudio-module-x11-0.9.15-17.fc11.x86_64
alsa-plugins-pulseaudio-1.0.20-2.fc11.x86_64
pulseaudio-module-bluetooth-0.9.15-17.fc11.x86_64
pulseaudio-libs-0.9.15-17.fc11.i586
pulseaudio-utils-0.9.15-17.fc11.x86_64

Gstreamer:
gstreamer-plugins-base-0.10.24-1.fc11.x86_64

Comment 5 Eric Hopper 2009-09-08 21:38:08 UTC
My sound isn't working at all after the pulseaudio and kernel upgrade:

uname -a
Linux bats.omnifarious.org 2.6.30.5-43.fc11.x86_64 #1 SMP Thu Aug 27 21:39:52 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

---------------

lsmod | fgrep snd
snd_hda_codec_realtek   281476  1 
snd_hda_intel          30488  3 
snd_hda_codec          78608  2 snd_hda_codec_realtek,snd_hda_intel
snd_usb_audio         100176  2 
snd_usb_lib            19504  1 snd_usb_audio
snd_pcm                88440  4 snd_hda_intel,snd_hda_codec,snd_usb_audio
snd_rawmidi            25792  1 snd_usb_lib
snd_timer              24224  1 snd_pcm
snd_seq_device          8308  1 snd_rawmidi
snd_hwdep               9736  2 snd_hda_codec,snd_usb_audio
snd_page_alloc         10064  2 snd_hda_intel,snd_pcm
snd                    73016  19 snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_usb_audio,snd_usb_lib,snd_pcm,snd_rawmidi,snd_timer,snd_seq_device,snd_hwdep
soundcore               7584  1 snd

------------------

rpm -qa | egrep 'pulseaudio|alsa'
alsa-lib-1.0.21-1.fc11.x86_64
wine-pulseaudio-1.1.23-1.fc11.i586
alsa-lib-1.0.21-1.fc11.i586
alsa-plugins-pulseaudio-1.0.20-2.fc11.i586
pulseaudio-module-gconf-0.9.15-17.fc11.x86_64
pulseaudio-libs-0.9.15-17.fc11.x86_64
pulseaudio-0.9.15-17.fc11.x86_64
pulseaudio-libs-glib2-0.9.15-17.fc11.x86_64
alsa-utils-1.0.21-1.fc11.x86_64
pulseaudio-utils-0.9.15-17.fc11.x86_64
xine-lib-pulseaudio-1.1.16.3-2.fc11.x86_64
pulseaudio-libs-0.9.15-17.fc11.i586
pulseaudio-module-x11-0.9.15-17.fc11.x86_64
alsa-plugins-pulseaudio-1.0.20-2.fc11.x86_64

------------------

lspci -v -s 00:06.1
00:06.1 Audio device: nVidia Corporation MCP55 High Definition Audio (rev a2)
	Subsystem: Tyan Computer Device 2915
	Flags: bus master, 66MHz, fast devsel, latency 0, IRQ 23
	Memory at 90000000 (32-bit, non-prefetchable) [size=16K]
	Capabilities: [44] Power Management version 2
	Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
	Capabilities: [6c] HyperTransport: MSI Mapping Enable+ Fixed+
	Kernel driver in use: HDA Intel
	Kernel modules: snd-hda-intel

------------------

It seems to be the driver at fault.  I get a popping noise in my speaker when pulseaudio initializes it, but after that no sound.  I was getting sound just fine before.  I've played with any volume control I could find, including gst-mixer, alsamixer and others.  I've also tried playback with aplay that bypassed pulseaudio.

Comment 6 Mary Ellen Foster 2009-09-18 09:45:02 UTC
*** Bug 524187 has been marked as a duplicate of this bug. ***

Comment 7 Mary Ellen Foster 2009-09-18 09:46:34 UTC
For me -- as I mentioned in my duplicate bug -- I get the popping sound every time audio output finishes, generally a few seconds after. For example:
- A Flash video in my browser finishes
- KDE plays its "notification" sound
- I pause or stop audio output in AmaroK

Comment 8 Jaroslav Kysela 2009-09-18 10:50:54 UTC
The click might be power save related . Just try to set the snd_hda_intel module parameter:

echo 0 > /sys/module/snd_hda_intel/parameters/power_save

Comment 9 Chris Ward 2009-09-18 12:05:40 UTC
Yes, the suggestion in comment #8 seems to do the trick. I've turned off power_save and i don't hear the poping/clicking anymore. 

BUT i don't think turning it off is really the solution here. But it's good to know we have the culprit.

Comment 10 Mary Ellen Foster 2009-09-18 12:10:36 UTC
Doing the powersave thing works for me too -- is the permanent solution to put something like "options snd_hda_intel power_save=0" into /etc/modprobe.d/local.conf? (Trying that now ...)

Comment 11 Mike Thompson 2009-09-19 22:28:23 UTC
I disabled power save by adding:
"options snd_hda_intel power_save_controller=0"
into /etc/modprobe.d/somename.conf

The following link explains what's going on....
http://www.thinkwiki.org/wiki/How_to_enable_audio_codec_power_saving

Comment 12 Barry Smith 2009-09-21 01:58:23 UTC
Comment #8 works for me as well.

Comment 13 Chris Ward 2009-09-22 08:27:44 UTC
Thanks for the hints. But does this mean that if we want this powersave feature on, we're going to have to live with the pops? Or is a solution for getting rid of the pops being worked on? This bug is still in NEW, rather than ASSIGNED, so it's hard to tell.

Comment 14 Jaroslav Kysela 2009-09-22 12:36:43 UTC
The pops are caused by HDA codecs. Powersave/restore sequences in the ALSA driver might be wrong - the code uses only generic way from codec datasheets. My experience it depends also on the circuit around the HDA codecs. Note that in vanilla kernel this feature is turned off by default (CONFIG_SND_HDA_POWER_SAVE_DEFAULT is zero).

Comment 15 Bug Zapper 2009-11-16 11:52:04 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 12 development cycle.
Changing version to '12'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 16 Chris Ward 2009-11-20 10:22:25 UTC
Updated to latest kernel kernel-2.6.31.5-127.fc12.x86_64

no problem. Will re-open if i hear it again. 

Thanks

Comment 17 Craig Keogh 2009-11-26 10:16:22 UTC
I have 2.6.31.5-127.fc12.x86_64, and I get audio pops. To fix, I created /etc/modprobe.d/sound.conf with:

options snd_hda_intel power_save_controller=N power_save=0

Both power_save_controller and power_save were needed.

Comment 18 Chris Ward 2009-11-26 10:27:03 UTC
I'm getting the pop (again) too. Should we re-open the bug?

Comment 19 Chris Ward 2009-11-26 10:28:24 UTC
I assume the fix you suggest will work for me too... but i'll report back on the result after I reboot, eventually.


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