mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-29 13:53:33 +00:00
ASoC: imx-audmix: check return value of devm_kasprintf()
devm_kasprintf() returns a pointer to dynamically allocated memory.
Pointer could be NULL in case allocation fails. Check pointer validity.
Identified with coccinelle (kmerr.cocci script).
Fixes: b86ef53677
("ASoC: fsl: Add Audio Mixer machine driver")
Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Link: https://lore.kernel.org/r/20230614121509.443926-1-claudiu.beznea@microchip.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
997905d523
commit
2f76e1d6ca
1 changed files with 9 additions and 0 deletions
|
@ -227,6 +227,8 @@ static int imx_audmix_probe(struct platform_device *pdev)
|
|||
|
||||
dai_name = devm_kasprintf(&pdev->dev, GFP_KERNEL, "%s%s",
|
||||
fe_name_pref, args.np->full_name + 1);
|
||||
if (!dai_name)
|
||||
return -ENOMEM;
|
||||
|
||||
dev_info(pdev->dev.parent, "DAI FE name:%s\n", dai_name);
|
||||
|
||||
|
@ -235,6 +237,8 @@ static int imx_audmix_probe(struct platform_device *pdev)
|
|||
capture_dai_name =
|
||||
devm_kasprintf(&pdev->dev, GFP_KERNEL, "%s %s",
|
||||
dai_name, "CPU-Capture");
|
||||
if (!capture_dai_name)
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -266,6 +270,8 @@ static int imx_audmix_probe(struct platform_device *pdev)
|
|||
"AUDMIX-Playback-%d", i);
|
||||
be_cp = devm_kasprintf(&pdev->dev, GFP_KERNEL,
|
||||
"AUDMIX-Capture-%d", i);
|
||||
if (!be_name || !be_pb || !be_cp)
|
||||
return -ENOMEM;
|
||||
|
||||
priv->dai[num_dai + i].cpus = &dlc[1];
|
||||
priv->dai[num_dai + i].codecs = &asoc_dummy_dlc;
|
||||
|
@ -288,6 +294,9 @@ static int imx_audmix_probe(struct platform_device *pdev)
|
|||
priv->dapm_routes[i].source =
|
||||
devm_kasprintf(&pdev->dev, GFP_KERNEL, "%s %s",
|
||||
dai_name, "CPU-Playback");
|
||||
if (!priv->dapm_routes[i].source)
|
||||
return -ENOMEM;
|
||||
|
||||
priv->dapm_routes[i].sink = be_pb;
|
||||
priv->dapm_routes[num_dai + i].source = be_pb;
|
||||
priv->dapm_routes[num_dai + i].sink = be_cp;
|
||||
|
|
Loading…
Reference in a new issue