Re: [PATCH 2/2] ASoC: simple-card: test memory allocation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3/10/19 7:20 PM, Kuninori Morimoto wrote:

Hi Pierre-Louis

Thank you for your patch.

devm_kcalloc() return value needs to be tested

Fixes: 17029e494edc6 ('ASoC: simple-card: add link_info')
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx>
---
  sound/soc/generic/simple-card.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/generic/simple-card.c b/sound/soc/generic/simple-card.c
index 08df261024cf..bed4fe5721a2 100644
--- a/sound/soc/generic/simple-card.c
+++ b/sound/soc/generic/simple-card.c
@@ -715,7 +715,7 @@ static int simple_probe(struct platform_device *pdev)
  	dai_link  = devm_kcalloc(dev, li.link, sizeof(*dai_link),  GFP_KERNEL);
  	dais      = devm_kcalloc(dev, li.dais, sizeof(*dais),      GFP_KERNEL);
  	cconf     = devm_kcalloc(dev, li.conf, sizeof(*cconf),     GFP_KERNEL);
-	if (!dai_props || !dai_link || !dais)
+	if (!dai_props || !dai_link || !dais || !cconf)
  		return -ENOMEM;

It isn't mentioned on code, but, "li.conf" will be 0 if it was not DPCM case.
This means cconf NULL might be happen.


Humm, then don't call devm_kcalloc with a zero argument...
And if you keep this code, if li.conf is not zero you still have a risk of memory allocation failure. the test should be

+	if (!dai_props || !dai_link || !dais || (!cconf && li.conf))
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux