Message ID | 20241107134308.23844-2-peter.ujfalusi@linux.intel.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | ASoC: SOF: Correct sps->stream and cstream nullity management | expand |
On Thu, Nov 07, 2024 at 03:43:07PM +0200, Peter Ujfalusi wrote: > The nullity of sps->cstream should be checked similarly as it is done in > sof_set_stream_data_offset() function. > Assuming that it is not NULL if sps->stream is NULL is incorrect and can > lead to NULL pointer dereference. > > Fixes: ef8ba9f79953 ("ASoC: SOF: Add support for compress API for stream data/offset") This commit, also referenced in the second patch, doesn't exist.
diff --git a/sound/soc/sof/stream-ipc.c b/sound/soc/sof/stream-ipc.c index 794c7bbccbaf..8262443ac89a 100644 --- a/sound/soc/sof/stream-ipc.c +++ b/sound/soc/sof/stream-ipc.c @@ -43,7 +43,7 @@ int sof_ipc_msg_data(struct snd_sof_dev *sdev, return -ESTRPIPE; posn_offset = stream->posn_offset; - } else { + } else if (sps->cstream) { struct sof_compr_stream *sstream = sps->cstream->runtime->private_data; @@ -51,6 +51,10 @@ int sof_ipc_msg_data(struct snd_sof_dev *sdev, return -ESTRPIPE; posn_offset = sstream->posn_offset; + + } else { + dev_err(sdev->dev, "%s: No stream opened\n", __func__); + return -EINVAL; } snd_sof_dsp_mailbox_read(sdev, posn_offset, p, sz);