mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-14 00:24:41 -04:00
asoc: validate channel number before use
Validate channel number before using it to index codec dma rx configuation array. CRs-Fixed: 2420338 Change-Id: I48109beedba2423158fa84dee0b9ccac340979b1 Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
This commit is contained in:
parent
eaa3444377
commit
9e17da0005
1 changed files with 6 additions and 6 deletions
12
asoc/kona.c
12
asoc/kona.c
|
|
@ -2297,7 +2297,7 @@ static int cdc_dma_rx_ch_get(struct snd_kcontrol *kcontrol,
|
|||
{
|
||||
int ch_num = cdc_dma_get_port_idx(kcontrol);
|
||||
|
||||
if (ch_num < 0) {
|
||||
if (ch_num < 0 || ch_num >= CDC_DMA_RX_MAX) {
|
||||
pr_err("%s: ch_num: %d is invalid\n", __func__, ch_num);
|
||||
return ch_num;
|
||||
}
|
||||
|
|
@ -2313,7 +2313,7 @@ static int cdc_dma_rx_ch_put(struct snd_kcontrol *kcontrol,
|
|||
{
|
||||
int ch_num = cdc_dma_get_port_idx(kcontrol);
|
||||
|
||||
if (ch_num < 0) {
|
||||
if (ch_num < 0 || ch_num >= CDC_DMA_RX_MAX) {
|
||||
pr_err("%s: ch_num: %d is invalid\n", __func__, ch_num);
|
||||
return ch_num;
|
||||
}
|
||||
|
|
@ -2330,7 +2330,7 @@ static int cdc_dma_rx_format_get(struct snd_kcontrol *kcontrol,
|
|||
{
|
||||
int ch_num = cdc_dma_get_port_idx(kcontrol);
|
||||
|
||||
if (ch_num < 0) {
|
||||
if (ch_num < 0 || ch_num >= CDC_DMA_RX_MAX) {
|
||||
pr_err("%s: ch_num: %d is invalid\n", __func__, ch_num);
|
||||
return ch_num;
|
||||
}
|
||||
|
|
@ -2363,7 +2363,7 @@ static int cdc_dma_rx_format_put(struct snd_kcontrol *kcontrol,
|
|||
int rc = 0;
|
||||
int ch_num = cdc_dma_get_port_idx(kcontrol);
|
||||
|
||||
if (ch_num < 0) {
|
||||
if (ch_num < 0 || ch_num >= CDC_DMA_RX_MAX) {
|
||||
pr_err("%s: ch_num: %d is invalid\n", __func__, ch_num);
|
||||
return ch_num;
|
||||
}
|
||||
|
|
@ -2498,7 +2498,7 @@ static int cdc_dma_rx_sample_rate_get(struct snd_kcontrol *kcontrol,
|
|||
{
|
||||
int ch_num = cdc_dma_get_port_idx(kcontrol);
|
||||
|
||||
if (ch_num < 0) {
|
||||
if (ch_num < 0 || ch_num >= CDC_DMA_RX_MAX) {
|
||||
pr_err("%s: ch_num: %d is invalid\n", __func__, ch_num);
|
||||
return ch_num;
|
||||
}
|
||||
|
|
@ -2516,7 +2516,7 @@ static int cdc_dma_rx_sample_rate_put(struct snd_kcontrol *kcontrol,
|
|||
{
|
||||
int ch_num = cdc_dma_get_port_idx(kcontrol);
|
||||
|
||||
if (ch_num < 0) {
|
||||
if (ch_num < 0 || ch_num >= CDC_DMA_RX_MAX) {
|
||||
pr_err("%s: ch_num: %d is invalid\n", __func__, ch_num);
|
||||
return ch_num;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue