gpio: max730x: eliminate double free
authorJulia Lawall <Julia.Lawall@lip6.fr>
Sat, 26 Sep 2015 20:18:20 +0000 (22:18 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Fri, 2 Oct 2015 22:06:41 +0000 (15:06 -0700)
The function __max730x_remove is called from the remove functions of
drivers/gpio/gpio-max7300.c and drivers/gpio/gpio-max7301.c.  In both
cases, the probe function allocates ts using devm_kzalloc.  Explicitly
freeing such a value with kfree will cause a double free.

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Reviewed-by: Alexandre Courbot <acourbot@nvidia.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpio-max730x.c

index 18ab89e208065911cd9fe4261686579360331095..0f57d2d248ec9e367ac67a9194e2b3c8e9460948 100644 (file)
@@ -236,7 +236,6 @@ int __max730x_remove(struct device *dev)
        ts->write(dev, 0x04, 0x00);
        gpiochip_remove(&ts->chip);
        mutex_destroy(&ts->lock);
-       kfree(ts);
        return 0;
 }
 EXPORT_SYMBOL_GPL(__max730x_remove);