diff options
author | Takashi Sakamoto <o-takashi@sakamocchi.jp> | 2017-05-24 10:04:30 +0900 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2017-05-24 10:18:28 +0200 |
commit | 4e361d3c962dda16e27d81e7aa9202828a8f7371 (patch) | |
tree | 6dc34680cdce95917afbd707544320eb4b641271 /sound/core/control.c | |
parent | ffb73b08e79418fbf3f2ea44a7818a6715399d2c (diff) | |
download | linux-stable-4e361d3c962dda16e27d81e7aa9202828a8f7371.tar.gz linux-stable-4e361d3c962dda16e27d81e7aa9202828a8f7371.tar.bz2 linux-stable-4e361d3c962dda16e27d81e7aa9202828a8f7371.zip |
ALSA: control: remove entry limitation for list operation
In current implementation of ALSA control core, list operation has
a limitation to handle 16384 entries at once. This seems due to
allocation in kernel space to copy data from user space.
With a commit 53e7bf452584 ("ALSA: control: Simplify snd_ctl_elem_list()
implementation"), for the operation, ALSA control core copies data
into user space directly. No need to care of kernel spaces anymore.
This commit purges the limitation.
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/core/control.c')
-rw-r--r-- | sound/core/control.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/sound/core/control.c b/sound/core/control.c index 47080da8451a..ecd358213b83 100644 --- a/sound/core/control.c +++ b/sound/core/control.c @@ -757,9 +757,7 @@ static int snd_ctl_elem_list(struct snd_card *card, return -EFAULT; offset = list.offset; space = list.space; - /* try limit maximum space */ - if (space > 16384) - return -ENOMEM; + down_read(&card->controls_rwsem); list.count = card->controls_count; list.used = 0; |