Re: [PATCH 30/38] vlynq: add missing put_device call

From: Florian Fainelli
Date: Thu Dec 19 2013 - 12:37:50 EST


2013/12/19 Levente Kurusa <levex@xxxxxxxxx>:
> This is required so that we give up the last reference to the device.
> This will result in vlynq_device_release being called making the kfree()
> in the errorpath unneccessary.
>
> Signed-off-by: Levente Kurusa <levex@xxxxxxxxx>

Acked-by: Florian Fainelli <florian@xxxxxxxxxxx>

> ---
> drivers/vlynq/vlynq.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/vlynq/vlynq.c b/drivers/vlynq/vlynq.c
> index 7b07135..71d5905 100644
> --- a/drivers/vlynq/vlynq.c
> +++ b/drivers/vlynq/vlynq.c
> @@ -748,11 +748,14 @@ static int vlynq_probe(struct platform_device *pdev)
> return 0;
>
> fail_register:
> + put_device(&dev->dev);
> + dev->dev = 0;
> iounmap(dev->local);
> fail_remap:
> fail_request:
> release_mem_region(regs_res->start, len);
> - kfree(dev);
> + if(dev)
> + kfree(dev);

This probably now generates a checkpatch warning since it is safe to
call kfree() on a NULL pointer.

> return result;
> }
>
> --
> 1.8.3.1



--
Florian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/