Re: [PATCH 1/2] ALSA: pcm: Set per-card upper limit of PCM buffer allocations

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 21 Jan 2020 03:13:20 +0100,
Keyon Jie wrote:
> 
> 
> 
> On 2020/1/20 下午8:44, Takashi Iwai wrote:
> > Currently, the available buffer allocation size for a PCM stream
> > depends on the preallocated size; when a buffer has been preallocated,
> > the max buffer size is set to that size, so that application won't
> > re-allocate too much memory.  OTOH, when no preallocation is done,
> > each substream may allocate arbitrary size of buffers as long as
> > snd_pcm_hardware.buffer_bytes_max allows -- which can be quite high,
> > HD-audio sets 1GB there.
> >
> > It means that the system may consume a high amount of pages for PCM
> > buffers, and they are pinned and never swapped out.  This can lead to
> > OOM easily.
> >
> > For avoiding such a situation, this patch adds the upper limit per
> > card.  Each snd_pcm_lib_malloc_pages() and _free_pages() calls are
> > tracked and it will return an error if the total amount of buffers
> > goes over the defined upper limit.  The default value is set to 32MB,
> 
> Is this typo here? In the patch, "max_alloc_per_card = 32UL * 1024UL *
> 1024UL * 1024UL", should be 32GB?

Oh yes, it's an obvious typo.  Fixed now.

Thanks!


Takashi
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux