Hi Markus,

On 09/01/17 21:44, SF Markus Elfring wrote:
> From: Markus Elfring <elfr...@users.sourceforge.net>
> 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 <elfr...@users.sourceforge.net>
> ---
>  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

Reply via email to