diff options
author | Cezary Rojewski <cezary.rojewski@intel.com> | 2024-04-05 12:09:23 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-05-30 10:49:37 +0300 |
commit | 5b9f16f6748d751310ab8e3f743919b6be4e2cd2 (patch) | |
tree | 62982bcb2705858bfe59a4d6d88c7d4faa8458be /sound/soc | |
parent | 4b7ff2dff96540da5047f8bff274d324d8b9cd2c (diff) | |
download | linux-5b9f16f6748d751310ab8e3f743919b6be4e2cd2.tar.xz |
ASoC: Intel: avs: Fix potential integer overflow
[ Upstream commit c7e832cabe635df47c2bf6df7801e97bf3045b1e ]
While stream_tag for CLDMA on SKL-based platforms is always 1, function
hda_cldma_setup() uses AZX_SD_CTL_STRM() macro which does:
stream_tag << 20
what combined with stream_tag type of 'unsigned int' generates a
potential overflow issue. Update the field type to fix that.
Fixes: 45864e49a05a ("ASoC: Intel: avs: Implement CLDMA transfer")
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Link: https://msgid.link/r/20240405090929.1184068-8-cezary.rojewski@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/intel/avs/cldma.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/soc/intel/avs/cldma.c b/sound/soc/intel/avs/cldma.c index d7a9390b5e48..585579840b64 100644 --- a/sound/soc/intel/avs/cldma.c +++ b/sound/soc/intel/avs/cldma.c @@ -35,7 +35,7 @@ struct hda_cldma { unsigned int buffer_size; unsigned int num_periods; - unsigned int stream_tag; + unsigned char stream_tag; void __iomem *sd_addr; struct snd_dma_buffer dmab_data; |