Use devm_kzalloc() to make cleanup paths simpler.

Signed-off-by: Jingoo Han <[email protected]>
---
 drivers/gpio/gpio-pcf857x.c |    7 ++-----
 1 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/gpio/gpio-pcf857x.c b/drivers/gpio/gpio-pcf857x.c
index a19b745..4f76514 100644
--- a/drivers/gpio/gpio-pcf857x.c
+++ b/drivers/gpio/gpio-pcf857x.c
@@ -267,7 +267,7 @@ static int pcf857x_probe(struct i2c_client *client,
        }
 
        /* Allocate, initialize, and register this gpio_chip. */
-       gpio = kzalloc(sizeof *gpio, GFP_KERNEL);
+       gpio = devm_kzalloc(&client->dev, sizeof(*gpio), GFP_KERNEL);
        if (!gpio)
                return -ENOMEM;
 
@@ -390,7 +390,6 @@ fail:
        if (pdata && client->irq)
                pcf857x_irq_domain_cleanup(gpio);
 
-       kfree(gpio);
        return status;
 }
 
@@ -415,9 +414,7 @@ static int pcf857x_remove(struct i2c_client *client)
                pcf857x_irq_domain_cleanup(gpio);
 
        status = gpiochip_remove(&gpio->chip);
-       if (status == 0)
-               kfree(gpio);
-       else
+       if (status)
                dev_err(&client->dev, "%s --> %d\n", "remove", status);
        return status;
 }
-- 
1.7.2.5


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

Reply via email to