diff mbox

ASoC: mediatek: mt2701: fix some error handling in probe

Message ID 20160707081404.GB16645@mwanda (mailing list archive)
State Accepted
Commit b02c5cc7239b8f58ba5da24092288dd7a9a56acc
Headers show

Commit Message

Dan Carpenter July 7, 2016, 8:14 a.m. UTC
The check for if the "afe" allocation failed was too late and there
wasn't a check for "afe->platform_priv".

Fixes: 43a6a7e71063 ('ASoC: mediatek: add mt2701 platform driver implementation.')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

Comments

Garlic Tseng July 7, 2016, 8:26 a.m. UTC | #1
On Thu, 2016-07-07 at 11:14 +0300, Dan Carpenter wrote:
> The check for if the "afe" allocation failed was too late and there
> wasn't a check for "afe->platform_priv".
> 
> Fixes: 43a6a7e71063 ('ASoC: mediatek: add mt2701 platform driver implementation.')
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> 
> diff --git a/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c b/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c
> index c865ba1..fc5a87d 100644
> --- a/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c
> +++ b/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c
> @@ -1350,11 +1350,13 @@ static int mt2701_afe_pcm_dev_probe(struct platform_device *pdev)
>  
>  	ret = 0;
>  	afe = devm_kzalloc(&pdev->dev, sizeof(*afe), GFP_KERNEL);
> +	if (!afe)
> +		return -ENOMEM;
>  	afe->platform_priv = devm_kzalloc(&pdev->dev, sizeof(*afe_priv),
>  					  GFP_KERNEL);
> -	afe_priv = afe->platform_priv;
> -	if (!afe)
> +	if (!afe->platform_priv)
>  		return -ENOMEM;
> +	afe_priv = afe->platform_priv;
>  
>  	afe->dev = &pdev->dev;
>  	dev = afe->dev;

Acked-by: Garlic Tseng <garlic.tseng@mediatek.com>
diff mbox

Patch

diff --git a/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c b/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c
index c865ba1..fc5a87d 100644
--- a/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c
+++ b/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c
@@ -1350,11 +1350,13 @@  static int mt2701_afe_pcm_dev_probe(struct platform_device *pdev)
 
 	ret = 0;
 	afe = devm_kzalloc(&pdev->dev, sizeof(*afe), GFP_KERNEL);
+	if (!afe)
+		return -ENOMEM;
 	afe->platform_priv = devm_kzalloc(&pdev->dev, sizeof(*afe_priv),
 					  GFP_KERNEL);
-	afe_priv = afe->platform_priv;
-	if (!afe)
+	if (!afe->platform_priv)
 		return -ENOMEM;
+	afe_priv = afe->platform_priv;
 
 	afe->dev = &pdev->dev;
 	dev = afe->dev;