projects
/
platform
/
kernel
/
linux-rpi.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
f88a697
)
ASoC: ops: Fix bounds check for _sx controls
author
Mark Brown
<broonie@kernel.org>
Wed, 11 May 2022 13:41:36 +0000
(14:41 +0100)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Thu, 8 Dec 2022 10:28:43 +0000
(11:28 +0100)
[ Upstream commit
698813ba8c580efb356ace8dbf55f61dac6063a8
]
For _sx controls the semantics of the max field is not the usual one, max
is the number of steps rather than the maximum value. This means that our
check in snd_soc_put_volsw_sx() needs to just check against the maximum
value.
Fixes:
4f1e50d6a9cf9c1b
("ASoC: ops: Reject out of bounds values in snd_soc_put_volsw_sx()")
Signed-off-by: Mark Brown <broonie@kernel.org>
Link:
https://lore.kernel.org/r/20220511134137.169575-1-broonie@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/soc-ops.c
patch
|
blob
|
history
diff --git
a/sound/soc/soc-ops.c
b/sound/soc/soc-ops.c
index
e73360e
..
b8a169d
100644
(file)
--- a/
sound/soc/soc-ops.c
+++ b/
sound/soc/soc-ops.c
@@
-433,7
+433,7
@@
int snd_soc_put_volsw_sx(struct snd_kcontrol *kcontrol,
val = ucontrol->value.integer.value[0];
if (mc->platform_max && val > mc->platform_max)
return -EINVAL;
- if (val > max
- min
)
+ if (val > max)
return -EINVAL;
if (val < 0)
return -EINVAL;