[alsa-devel] [PATCH] ALSA: control: remove entry limitation for list operation
Takashi Sakamoto
o-takashi at sakamocchi.jp
Wed May 24 03:04:30 CEST 2017
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.
---
sound/core/control.c | 4 +---
1 file changed, 1 insertion(+), 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;
--
2.11.0
More information about the Alsa-devel
mailing list