Re: [PATCH v2] ASoC: Intel: avs: Fix null-ptr-deref in avs_component_probe()

From: Markus Elfring
Date: Wed Apr 02 2025 - 15:19:04 EST


> devm_kasprintf() returns NULL when memory allocation fails. Currently,

failed?

Can a summary phrase like “Prevent null pointer dereference
in avs_component_probe()” a bit nicer?



> +++ b/sound/soc/intel/avs/pcm.c
> @@ -927,7 +927,8 @@ static int avs_component_probe(struct snd_soc_component *component)
> else
> mach->tplg_filename = devm_kasprintf(adev->dev, GFP_KERNEL,
> "hda-generic-tplg.bin");
> -
> + if (!mach->tplg_filename)
> + return -ENOMEM;

Can a blank line be desirable after such a statement?


Would another source code transformation become helpful with an additional update step?

- if (((vendor_id >> 16) & 0xFFFF) == 0x8086)
- mach->tplg_filename = devm_kasprintf(adev->dev, GFP_KERNEL,
- "hda-8086-generic-tplg.bin");
- else
- mach->tplg_filename = devm_kasprintf(adev->dev, GFP_KERNEL,
- "hda-generic-tplg.bin");
+ mach->tplg_filename = devm_kasprintf(adev->dev, GFP_KERNEL,
+ (((vendor_id >> 16) & 0xFFFF) == 0x8086)
+ ? "hda-8086-generic-tplg.bin"
+ : "hda-generic-tplg.bin");


Regards,
Markus