[alsa-devel] Duplicate wake-ups in pcm_lib.c

Raymond Yau superquad.vortex2 at gmail.com
Wed Jan 20 08:38:55 CET 2010


2010/1/13 Jaroslav Kysela <perex at perex.cz>

> On Wed, 13 Jan 2010, Raymond Yau wrote:
>
>  2010/1/11 Jaroslav Kysela <perex at perex.cz>
>>
>>  On Mon, 11 Jan 2010, Raymond Yau wrote:
>>>
>>>  2010/1/7 Jaroslav Kysela <perex at perex.cz>
>>>
>>>>
>>>>  On Wed, 6 Jan 2010, pl bossart wrote:
>>>>
>>>>>
>>>>>
>>>>>
>>>>> The improved and more clean fix in now in my tree:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> http://git.alsa-project.org/?p=alsa-kernel.git;a=commitdiff;h=1250932e48d3b698415b1f04775433cf1da688d6
>>>>>
>>>>> Note that you should apply these 4 patches (in reverse order):
>>>>>
>>>>> 4: ALSA: pcm_lib - optimize wake_up() calls for PCM I/O
>>>>> 3: ALSA: pcm_lib - cleanup & merge hw_ptr update functions
>>>>> 2: ALSA: pcm_lib - add possibility to log last 10 DMA ring buffer
>>>>> positions
>>>>> 1: ALSA: pcm_lib.c - convert second xrun_debug() parameter to use
>>>>> defines
>>>>>
>>>>> Patch #3 should definitely fix problems with large avail or delay
>>>>> values
>>>>> reported in PA. I finally figured the culprit (and decide to cleanup
>>>>> all
>>>>> relevant code rather do just another workaround). In other words, new
>>>>> hw_ptr pointer should never be less than previous one now.
>>>>>
>>>>>                                              Jaroslav
>>>>>
>>>>> -
>>>>>
>>>>>
>>>>>  using alsa-driver-1.0.22.1.1.g231e3.14.g812cb and Fedora 12 inside
>>>> Virtual
>>>> Box
>>>>
>>>> aplay -D plughw:0,0 /usr/share/sounds/alsa/*.wav
>>>>
>>>> "Front Left" sound as "Front Front Left" when playing "Front_left.wav"
>>>>
>>>> only when echo 4 > /proc/asound/card0/pcm0p/xrun_debug
>>>>
>>>>
>>> Thanks for testing.
>>>
>>> It means that with other values is no sound generated?
>>>
>>> Could you use value 29 for xrun_debug and report all sound related
>>> messages
>>> from dmesg output after playback of "Front_left.wav"?
>>>
>>>                                       Jaroslav
>>>
>>> -----
>>>
>>
>>
>>
>> do you mean 27 instead of 29 since the echo only occur when the value
>> contain XRUN_DEBUG_JIFFIESCHECK  bit  ?
>>
>> aplay -Dplughw:0,0 and mplayer -ao alsa:device=hw=0,0 work normal
>>
>> except when the value of xrun_debug contain XRUN_DEBUG_JIFFIESCHECK  bit
>>  (
>> same result for the three  virtual box audio backend oss, pulseaudio and
>> alsa )
>>
>
> Ok, I understand now. It would be better to use value 101 then - to see
> last 10 ring buffer positions when jiffies correction occurs. Also, get
> latest snapshot - there is a fix for jiffies check. Thanks.
>
>                                        Jaroslav
>
>
 alsa-driver-1.0.22.1.1.g231e3.61.g42efb
copying file alsa/kernel/core/sound.c
patchfile file sound.c
Hunk# 12  FAILED at 518
1 out of 12 hunks FAILED -- saving rejects to file sound.c.rej


seem related to
http://git.alsa-project.org/?p=alsa-kernel.git;a=commit;h=8a822c23333694e7d1e6ccb15267e251af6d8f4f


More information about the Alsa-devel mailing list