[alsa-devel] 0 or EAGAIN from snd_pcm_update_avail()?

Ludovico Cavedon ludovico.cavedon at gmail.com
Sun Apr 5 04:39:44 CEST 2009


On Fri, Apr 3, 2009 at 12:04 AM, Jaroslav Kysela <perex at perex.cz> wrote:
> On Thu, 2 Apr 2009, Ludovico Cavedon wrote:
>> if snd_pcm_update_avail() gets called on a PCM device in non-blocking
>> mode when no data is availabe jet, what is the expected return value?
>> -0
>> -EAGAIN
>> -either is valid
>>
>> I am asking this question because pulseaudio expect to receive 0, but
>> the the bluetooth headset pcm transfer callback returns EAGAIN, so I
>> want to find out against whoms I should open a bug :)
>
> 0.
>
> -EAGAIN should be returned only for R/W operations but not for buffer
> position routines. They should return always immediatelly with useable value
> (thus EAGAIN does not make sense).

I see.
But is it correct for the ioplug module to call the transfer callback
when snd_pcm_avail_update() is invoked?

Thanks,
Ludovico


More information about the Alsa-devel mailing list