Re: [PATCH RESEND 6/7] watchdog: riowd: use devm_kzalloc()
From: Guenter Roeck
Date: Mon Apr 29 2013 - 14:08:00 EST
On Mon, Apr 29, 2013 at 06:36:09PM +0900, Jingoo Han wrote:
> Use devm_kzalloc() to make cleanup paths simpler.
>
> Signed-off-by: Jingoo Han <jg1.han@xxxxxxxxxxx>
> ---
> drivers/watchdog/riowd.c | 8 ++------
> 1 files changed, 2 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/watchdog/riowd.c b/drivers/watchdog/riowd.c
> index 0040451..13363ad 100644
> --- a/drivers/watchdog/riowd.c
> +++ b/drivers/watchdog/riowd.c
> @@ -183,7 +183,7 @@ static int riowd_probe(struct platform_device *op)
> goto out;
>
> err = -ENOMEM;
> - p = kzalloc(sizeof(*p), GFP_KERNEL);
> + p = devm_kzalloc(&op->dev, sizeof(*p), GFP_KERNEL);
> if (!p)
> goto out;
>
That goto is really unnecessary. Just return -ENOMEM and drop the label.
Though that is really another logical change and should be done separately,
so
Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> @@ -192,7 +192,7 @@ static int riowd_probe(struct platform_device *op)
> p->regs = of_ioremap(&op->resource[0], 0, 2, DRIVER_NAME);
> if (!p->regs) {
> pr_err("Cannot map registers\n");
> - goto out_free;
> + goto out;
> }
> /* Make miscdev useable right away */
> riowd_device = p;
> @@ -213,9 +213,6 @@ out_iounmap:
> riowd_device = NULL;
> of_iounmap(&op->resource[0], p->regs, 2);
>
> -out_free:
> - kfree(p);
> -
> out:
> return err;
> }
> @@ -226,7 +223,6 @@ static int riowd_remove(struct platform_device *op)
>
> misc_deregister(&riowd_miscdev);
> of_iounmap(&op->resource[0], p->regs, 2);
> - kfree(p);
>
> return 0;
> }
> --
> 1.7.2.5
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-watchdog" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
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/