aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2019-11-05 20:10:07 +0100
committerTakashi Iwai <tiwai@suse.de>2019-11-06 15:43:34 +0100
commitd39789912f150b66515ccda7ed00bba828a334d4 (patch)
tree2c43485ace2671eb6f7860791286223d4c735ca7
parentALSA: pcm: Warn if doubly preallocated (diff)
downloadlinux-dev-d39789912f150b66515ccda7ed00bba828a334d4.tar.xz
linux-dev-d39789912f150b66515ccda7ed00bba828a334d4.zip
ALSA: pcm: Create proc files only for non-empty preallocations
It makes little sense to create prealloc proc files for streams that have the zero max size, which is a typical case for vmalloc buffers. Skip the proc file creations to save resources in such a case. Link: https://lore.kernel.org/r/20191105191007.18150-3-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--sound/core/pcm_memory.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/core/pcm_memory.c b/sound/core/pcm_memory.c
index 19407f79b638..17ee361ce791 100644
--- a/sound/core/pcm_memory.c
+++ b/sound/core/pcm_memory.c
@@ -203,7 +203,8 @@ static void snd_pcm_lib_preallocate_pages1(struct snd_pcm_substream *substream,
if (substream->dma_buffer.bytes > 0)
substream->buffer_bytes_max = substream->dma_buffer.bytes;
substream->dma_max = max;
- preallocate_info_init(substream);
+ if (max > 0)
+ preallocate_info_init(substream);
}