projects
/
platform
/
kernel
/
linux-starfive.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
821fbae
)
ALSA: scarlett2: Add clamp() in scarlett2_mixer_ctl_put()
author
Geoffrey D. Bennett
<g@b4.vu>
Tue, 19 Dec 2023 17:37:52 +0000
(
04:07
+1030)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Thu, 25 Jan 2024 23:35:39 +0000
(15:35 -0800)
[ Upstream commit
04f8f053252b86c7583895c962d66747ecdc61b7
]
Ensure the value passed to scarlett2_mixer_ctl_put() is between 0 and
SCARLETT2_MIXER_MAX_VALUE so we don't attempt to access outside
scarlett2_mixer_values[].
Signed-off-by: Geoffrey D. Bennett <g@b4.vu>
Fixes:
9e4d5c1be21f
("ALSA: usb-audio: Scarlett Gen 2 mixer interface")
Link:
https://lore.kernel.org/r/3b19fb3da641b587749b85fe1daa1b4e696c0c1b.1703001053.git.g@b4.vu
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/usb/mixer_scarlett_gen2.c
patch
|
blob
|
history
diff --git
a/sound/usb/mixer_scarlett_gen2.c
b/sound/usb/mixer_scarlett_gen2.c
index
087e120
..
c04cff7
100644
(file)
--- a/
sound/usb/mixer_scarlett_gen2.c
+++ b/
sound/usb/mixer_scarlett_gen2.c
@@
-3361,7
+3361,8
@@
static int scarlett2_mixer_ctl_put(struct snd_kcontrol *kctl,
mutex_lock(&private->data_mutex);
oval = private->mix[index];
- val = ucontrol->value.integer.value[0];
+ val = clamp(ucontrol->value.integer.value[0],
+ 0L, (long)SCARLETT2_MIXER_MAX_VALUE);
num_mixer_in = port_count[SCARLETT2_PORT_TYPE_MIX][SCARLETT2_PORT_OUT];
mix_num = index / num_mixer_in;