Re: [PATCH 3/4] [media] sp2: Adjust a jump target in sp2_probe()

2017-09-08 Thread Hans Verkuil
Hi Markus,

On 09/01/17 21:44, SF Markus Elfring wrote:
> From: Markus Elfring 
> Date: Fri, 1 Sep 2017 21:08:38 +0200
> 
> * Adjust a jump target so that a null pointer will not be passed to a call
>   of the function "kfree".
> 
> * Move this function call into an if branch.
> 
> Signed-off-by: Markus Elfring 
> ---
>  drivers/media/dvb-frontends/sp2.c | 13 +++--
>  1 file changed, 7 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/media/dvb-frontends/sp2.c 
> b/drivers/media/dvb-frontends/sp2.c
> index dd556012ceb6..b2a7a54174ae 100644
> --- a/drivers/media/dvb-frontends/sp2.c
> +++ b/drivers/media/dvb-frontends/sp2.c
> @@ -384,7 +384,7 @@ static int sp2_probe(struct i2c_client *client,
>   s = kzalloc(sizeof(*s), GFP_KERNEL);
>   if (!s) {
>   ret = -ENOMEM;
> - goto err;
> + goto report_failure;
>   }
>  
>   s->client = client;
> @@ -395,15 +395,16 @@ static int sp2_probe(struct i2c_client *client,
>   i2c_set_clientdata(client, s);
>  
>   ret = sp2_init(s);
> - if (ret)
> - goto err;
> + if (ret) {
> + kfree(s);
> + goto report_failure;
> + }
>  
>   dev_info(&s->client->dev, "CIMaX SP2 successfully attached\n");
>   return 0;
> -err:
> - dev_dbg(&client->dev, "init failed=%d\n", ret);
> - kfree(s);
>  
> +report_failure:
> + dev_dbg(&client->dev, "init failed=%d\n", ret);
>   return ret;
>  }
>  
> 

It's perfectly fine to call kfree() with a NULL pointer, and I don't think
that this patch makes the code more readable, so I'm dropping this patch.

Regards,

Hans


[PATCH 3/4] [media] sp2: Adjust a jump target in sp2_probe()

2017-09-01 Thread SF Markus Elfring
From: Markus Elfring 
Date: Fri, 1 Sep 2017 21:08:38 +0200

* Adjust a jump target so that a null pointer will not be passed to a call
  of the function "kfree".

* Move this function call into an if branch.

Signed-off-by: Markus Elfring 
---
 drivers/media/dvb-frontends/sp2.c | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/drivers/media/dvb-frontends/sp2.c 
b/drivers/media/dvb-frontends/sp2.c
index dd556012ceb6..b2a7a54174ae 100644
--- a/drivers/media/dvb-frontends/sp2.c
+++ b/drivers/media/dvb-frontends/sp2.c
@@ -384,7 +384,7 @@ static int sp2_probe(struct i2c_client *client,
s = kzalloc(sizeof(*s), GFP_KERNEL);
if (!s) {
ret = -ENOMEM;
-   goto err;
+   goto report_failure;
}
 
s->client = client;
@@ -395,15 +395,16 @@ static int sp2_probe(struct i2c_client *client,
i2c_set_clientdata(client, s);
 
ret = sp2_init(s);
-   if (ret)
-   goto err;
+   if (ret) {
+   kfree(s);
+   goto report_failure;
+   }
 
dev_info(&s->client->dev, "CIMaX SP2 successfully attached\n");
return 0;
-err:
-   dev_dbg(&client->dev, "init failed=%d\n", ret);
-   kfree(s);
 
+report_failure:
+   dev_dbg(&client->dev, "init failed=%d\n", ret);
return ret;
 }
 
-- 
2.14.1