[alsa-devel] [RFC][PATCH 0/2] Fix aplay and alsa-lib write_areas() freezing with 100% cpu usage on stuck slave pcm

Jaroslav Kysela perex at perex.cz
Fri Jun 13 19:20:03 CEST 2014


Date 13.6.2014 14:13, Sergey wrote:
> Fri, 13 Jun 2014 Jaroslav Kysela wrote:
> 
>>> First patch fixes snd_pcm_write_areas() stuck in a loop because of transfer
>>> func() always returning 0. That caused application calling it to freeze.
>>> In the example above it have frozen aplay. If it was called by firefox,
>>> it would freeze firefox.
>>>
>>> Is it a good way to fix it? Should snd_pcm_read_areas() be fixed like that too?
>>
>> Nope: The whole culprit was in the null plugin - the stream was not
>> started, thus new samples were not delivered.
>>
>> I tried to fix this in:
>>
>> http://git.alsa-project.org/?p=alsa-lib.git;a=commit;h=9c3086fb749cd5545be3f15cdde1592390006258
>>
>>> Second patch fixes aplay itself, not returning from pcm_write() after SIGINT.
>>
>> Thanks, looks good, but I added the in_aborting check to other
>> functions, too:
>>
>> http://git.alsa-project.org/?p=alsa-utils.git;a=commit;h=c06dbf077459923066c96556678835cd1f55123a
> 
> It works great. Thank you!
> 
> PS: What do you think about that small aplay patch?:
> http://mailman.alsa-project.org/pipermail/alsa-devel/2014-June/077665.html
> aplay -vvv output looks weird without it.

Thanks. Applied now.

				Jaroslav


-- 
Jaroslav Kysela <perex at perex.cz>
Linux Kernel Sound Maintainer
ALSA Project; Red Hat, Inc.


More information about the Alsa-devel mailing list