[pulseaudio-discuss] pulseaudio cannot recognise ALSA plughw

Lennart Poettering lennart at poettering.net
Mon Jan 19 12:42:17 PST 2009


On Mon, 19.01.09 22:33, Aleksander Kamenik (aleksander at krediidiinfo.ee) wrote:

> 
> Lennart Poettering wrote:
> > On Mon, 19.01.09 21:38, Aleksander Kamenik (aleksander at krediidiinfo.ee) wrote:
> > 
> >> Lennart Poettering wrote:
> >>
> >>> This really looks like some ALSA issue. I fear they only way to figure
> >>> out what is going on is using gdb and stepping through
> >>> pa_alsa_set_hw_params(). Do you think you can do this?
> >> I've player around with gdb in the past, though don't remember much. In 
> >> the worst case I'll learn something :).
> >>
> >> IIRC with Fedora I have to get a -debug package of pulseaudio first to 
> >> get the debug symbols? I can't find it though.
> > 
> > debuginfo-install pulseaudio
> > LD_BIND_NOW=1 gdb /usr/bin/pulseaudio
> > b pa_alsa_set_hw_params
> > r
> > 
> > And then use "n" to step though the code to check which call in
> > pa_alsa_set_hw_params() actually fails.
> > 
> > Lennart
> > 
> 
> I'm not sure what I'm searching for.
> 
> Got this at some point:
> 
> E: alsa-util.c: snd_pcm_avail_update() returned a value that is 
> exceptionally large: 5244504 bytes (29730 ms) Most likely this is an 
> ALSA driver bug. Please report this issue to the PulseAudio developers.
> N: module-alsa-sink.c: Increasing wakeup watermark to 40.00 ms

Nah, ignore that. Because you are stopping PA while you debug you hit
underruns all the time for the other audio device you have. YOu can ignore that. 

It is a good idea though to load only the ALSA sink module for this
specific device. i.e. Use this gdb line:

LD_BIND_NOW gdb ---args /usr/bin/pulseaudio -n -L"module-alsa-sink device_id=0"

If you do that you keep noise with unrelated messages at a minimum.

> N: module-alsa-source.c: Increasing wakeup watermark to 40.00 ms
> N: module-alsa-source.c: Increasing wakeup watermark to 80.00 ms
> N: module-alsa-source.c: Increasing wakeup watermark to 160.00 ms
> N: module-alsa-source.c: Increasing wakeup watermark to 320.00 ms
> N: module-alsa-source.c: Increasing wakeup watermark to 368.53 ms
> E: alsa-util.c: snd_pcm_avail_update() returned a value that is 
> exceptionally large: 12456236 bytes (70613 ms) Most likely this is an 
> ALSA driver bug. Please report this issue to the PulseAudio developers.

That's all due to the stopping of PA and the other device.

> http://pastebin.com/m408f914d
> 
> Is this it? If not, what am I searching for? In another part I've seen 
> real-time event 62 too, if that means anything.

Nah, that's just a signal. Tell gdb to ignore those signals:

handle SIGXCPU SIGPWR SIG32 SIG33 SIG34 SIG42 SIG43 SIG44 SIG45 SIG46 SIG47 SIG48 SIG49 SIG50 SIG51 SIG52 SIG53 SIG63 SIG62 SIG61 SIG60 SIG59 SIG58 nostop noprint

(Might be a good idea to put that in ~/.gdbinit)

Lennart

-- 
Lennart Poettering                        Red Hat, Inc.
lennart [at] poettering [dot] net         ICQ# 11060553
http://0pointer.net/lennart/           GnuPG 0x1A015CC4



More information about the pulseaudio-discuss mailing list