From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> To: broonie@kernel.org Cc: lgirdwood@gmail.com, perex@perex.cz, tiwai@suse.com, pierre-louis.bossart@linux.intel.com, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, quic_srivasam@quicinc.com, Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Subject: [PATCH 04/16] ASoC: codecs: va-macro: fix accessing array out of bounds for enum type Date: Tue, 22 Feb 2022 11:59:21 +0000 [thread overview] Message-ID: <20220222115933.9114-5-srinivas.kandagatla@linaro.org> (raw) In-Reply-To: <20220222115933.9114-1-srinivas.kandagatla@linaro.org> Accessing enums using integer would result in array out of bounds access on platforms like aarch64 where sizeof(long) is 8 compared to enum size which is 4 bytes. Fixes: 908e6b1df26e ("ASoC: codecs: lpass-va-macro: Add support to VA Macro") Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> --- sound/soc/codecs/lpass-va-macro.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/lpass-va-macro.c b/sound/soc/codecs/lpass-va-macro.c index 803e4dca0538..0fd0139e8229 100644 --- a/sound/soc/codecs/lpass-va-macro.c +++ b/sound/soc/codecs/lpass-va-macro.c @@ -781,7 +781,7 @@ static int va_macro_dec_mode_get(struct snd_kcontrol *kcontrol, struct soc_enum *e = (struct soc_enum *)kcontrol->private_value; int path = e->shift_l; - ucontrol->value.integer.value[0] = va->dec_mode[path]; + ucontrol->value.enumerated.item[0] = va->dec_mode[path]; return 0; } @@ -790,7 +790,7 @@ static int va_macro_dec_mode_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { struct snd_soc_component *comp = snd_soc_kcontrol_component(kcontrol); - int value = ucontrol->value.integer.value[0]; + int value = ucontrol->value.enumerated.item[0]; struct soc_enum *e = (struct soc_enum *)kcontrol->private_value; int path = e->shift_l; struct va_macro *va = snd_soc_component_get_drvdata(comp); -- 2.21.0
WARNING: multiple messages have this Message-ID (diff)
From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> To: broonie@kernel.org Cc: alsa-devel@alsa-project.org, lgirdwood@gmail.com, linux-kernel@vger.kernel.org, pierre-louis.bossart@linux.intel.com, tiwai@suse.com, Srinivas Kandagatla <srinivas.kandagatla@linaro.org>, quic_srivasam@quicinc.com Subject: [PATCH 04/16] ASoC: codecs: va-macro: fix accessing array out of bounds for enum type Date: Tue, 22 Feb 2022 11:59:21 +0000 [thread overview] Message-ID: <20220222115933.9114-5-srinivas.kandagatla@linaro.org> (raw) In-Reply-To: <20220222115933.9114-1-srinivas.kandagatla@linaro.org> Accessing enums using integer would result in array out of bounds access on platforms like aarch64 where sizeof(long) is 8 compared to enum size which is 4 bytes. Fixes: 908e6b1df26e ("ASoC: codecs: lpass-va-macro: Add support to VA Macro") Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> --- sound/soc/codecs/lpass-va-macro.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/lpass-va-macro.c b/sound/soc/codecs/lpass-va-macro.c index 803e4dca0538..0fd0139e8229 100644 --- a/sound/soc/codecs/lpass-va-macro.c +++ b/sound/soc/codecs/lpass-va-macro.c @@ -781,7 +781,7 @@ static int va_macro_dec_mode_get(struct snd_kcontrol *kcontrol, struct soc_enum *e = (struct soc_enum *)kcontrol->private_value; int path = e->shift_l; - ucontrol->value.integer.value[0] = va->dec_mode[path]; + ucontrol->value.enumerated.item[0] = va->dec_mode[path]; return 0; } @@ -790,7 +790,7 @@ static int va_macro_dec_mode_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { struct snd_soc_component *comp = snd_soc_kcontrol_component(kcontrol); - int value = ucontrol->value.integer.value[0]; + int value = ucontrol->value.enumerated.item[0]; struct soc_enum *e = (struct soc_enum *)kcontrol->private_value; int path = e->shift_l; struct va_macro *va = snd_soc_component_get_drvdata(comp); -- 2.21.0
next prev parent reply other threads:[~2022-02-22 12:00 UTC|newest] Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-02-22 11:59 [PATCH 00/16] ASoC: codecs: qcom fix validation failures Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 01/16] ASoC: codecs: rx-macro: fix accessing compander for aux Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 02/16] ASoC: codecs: rx-macro: fix accessing array out of bounds for enum type Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 03/16] ASoC: codecs: tx-macro: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla [this message] 2022-02-22 11:59 ` [PATCH 04/16] ASoC: codecs: va-macro: " Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 05/16] ASoC: codecs: wsa-macro: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 06/16] ASoC: codecs: wc938x: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 07/16] ASoC: codecs: wcd938x: fix kcontrol max values Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 08/16] ASoC: codecs: wcd934x: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 09/16] ASoC: codecs: wcd934x: fix return value of wcd934x_rx_hph_mode_put Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 17:54 ` Mark Brown 2022-02-22 17:54 ` Mark Brown 2022-02-22 18:22 ` Srinivas Kandagatla 2022-02-22 18:22 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 10/16] ASoC: codecs: rx-macro: fix tlv min max range Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 18:04 ` Mark Brown 2022-02-22 18:04 ` Mark Brown 2022-02-22 18:21 ` Srinivas Kandagatla 2022-02-22 18:21 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 11/16] ASoC: codecs: tx-macro: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 12/16] ASoC: codecs: va-macro: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 13/16] ASoC: codecs: wsa-macro: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 14/16] ASoC: codecs: wcd938x: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 15/16] ASoC: codecs: wcd9335: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-22 11:59 ` [PATCH 16/16] ASoC: codecs: msm8916-wcd-digital: " Srinivas Kandagatla 2022-02-22 11:59 ` Srinivas Kandagatla 2022-02-23 4:08 ` (subset) [PATCH 00/16] ASoC: codecs: qcom fix validation failures Mark Brown 2022-02-23 4:08 ` Mark Brown
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220222115933.9114-5-srinivas.kandagatla@linaro.org \ --to=srinivas.kandagatla@linaro.org \ --cc=alsa-devel@alsa-project.org \ --cc=broonie@kernel.org \ --cc=lgirdwood@gmail.com \ --cc=linux-kernel@vger.kernel.org \ --cc=perex@perex.cz \ --cc=pierre-louis.bossart@linux.intel.com \ --cc=quic_srivasam@quicinc.com \ --cc=tiwai@suse.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.