Use devm_kzalloc() to make cleanup paths simpler.

Signed-off-by: Jingoo Han <jg1....@samsung.com>
---
 drivers/gpio/gpio-mc33880.c |    8 +++-----
 1 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/gpio/gpio-mc33880.c b/drivers/gpio/gpio-mc33880.c
index 6a8fdc2..b161489 100644
--- a/drivers/gpio/gpio-mc33880.c
+++ b/drivers/gpio/gpio-mc33880.c
@@ -101,7 +101,7 @@ static int mc33880_probe(struct spi_device *spi)
        if (ret < 0)
                return ret;
 
-       mc = kzalloc(sizeof(struct mc33880), GFP_KERNEL);
+       mc = devm_kzalloc(&spi->dev, sizeof(struct mc33880), GFP_KERNEL);
        if (!mc)
                return -ENOMEM;
 
@@ -143,7 +143,6 @@ static int mc33880_probe(struct spi_device *spi)
 exit_destroy:
        dev_set_drvdata(&spi->dev, NULL);
        mutex_destroy(&mc->lock);
-       kfree(mc);
        return ret;
 }
 
@@ -159,10 +158,9 @@ static int mc33880_remove(struct spi_device *spi)
        dev_set_drvdata(&spi->dev, NULL);
 
        ret = gpiochip_remove(&mc->chip);
-       if (!ret) {
+       if (!ret)
                mutex_destroy(&mc->lock);
-               kfree(mc);
-       } else
+       else
                dev_err(&spi->dev, "Failed to remove the GPIO controller: %d\n",
                        ret);
 
-- 
1.7.2.5


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
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