[PATCH v2] ASoC: soc-pcm: Add NULL check in BE reparenting
Cezary Rojewski
cezary.rojewski at intel.com
Wed Nov 23 10:16:40 CET 2022
On 2022-11-22 7:31 AM, Srinivasa Rao Mandadapu wrote:
> Add NULL check in dpcm_be_reparent API, to handle
> kernel NULL pointer dereference error.
> The issue occurred in fuzzing test.
>
> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam at quicinc.com>
> ---
> Changes Since V1:
> -- Update commit title.
>
> sound/soc/soc-pcm.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c
> index 493f003..a7810c7 100644
> --- a/sound/soc/soc-pcm.c
> +++ b/sound/soc/soc-pcm.c
> @@ -1247,6 +1247,8 @@ static void dpcm_be_reparent(struct snd_soc_pcm_runtime *fe,
> return;
>
> be_substream = snd_soc_dpcm_get_substream(be, stream);
> + if (!be_substream)
> + return;
>
> for_each_dpcm_fe(be, stream, dpcm) {
> if (dpcm->fe == fe)
The explanation provided is hardly satisfactory. The reason I asked, is
that be_substream should never be null by the time we get to
dpcm_be_reparent(). There is a number of invocations of
snd_soc_dpcm_get_substream() within sound/soc/*.c and yet most of them
are not checked - as they do not need to be.
I believe that the problem may lie elsewhere and this patch just covered
things up.
Regards,
Czarek
More information about the Alsa-devel
mailing list