| From 8215b3d86b9fb8f897d52209f61da2df2bf85f69 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 16 Aug 2023 16:33:11 +0300 |
| Subject: ASoC: SOF: ipc4-pcm: fix possible null pointer deference |
| |
| From: Chao Song <chao.song@linux.intel.com> |
| |
| [ Upstream commit 2d218b45848b92b03b220bf4d9bef29f058f866f ] |
| |
| The call to snd_sof_find_spcm_dai() could return NULL, |
| add nullable check for the return value to avoid null |
| pointer defenrece. |
| |
| Fixes: 7cb19007baba ("ASoC: SOF: ipc4-pcm: add hw_params") |
| Signed-off-by: Chao Song <chao.song@linux.intel.com> |
| Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> |
| Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> |
| Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com> |
| Link: https://lore.kernel.org/r/20230816133311.7523-1-peter.ujfalusi@linux.intel.com |
| Signed-off-by: Mark Brown <broonie@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| sound/soc/sof/ipc4-pcm.c | 3 +++ |
| 1 file changed, 3 insertions(+) |
| |
| diff --git a/sound/soc/sof/ipc4-pcm.c b/sound/soc/sof/ipc4-pcm.c |
| index 9e2b6c45080dd..49eb98605518a 100644 |
| --- a/sound/soc/sof/ipc4-pcm.c |
| +++ b/sound/soc/sof/ipc4-pcm.c |
| @@ -708,6 +708,9 @@ static int sof_ipc4_pcm_hw_params(struct snd_soc_component *component, |
| struct snd_sof_pcm *spcm; |
| |
| spcm = snd_sof_find_spcm_dai(component, rtd); |
| + if (!spcm) |
| + return -EINVAL; |
| + |
| time_info = spcm->stream[substream->stream].private; |
| /* delay calculation is not supported by current fw_reg ABI */ |
| if (!time_info) |
| -- |
| 2.40.1 |
| |