OSDN Git Service

ARM: sa1111: use devm_kzalloc()
authorRussell King <rmk+kernel@armlinux.org.uk>
Tue, 6 Sep 2016 14:29:26 +0000 (15:29 +0100)
committerRussell King <rmk+kernel@armlinux.org.uk>
Tue, 20 Sep 2016 13:21:07 +0000 (14:21 +0100)
Use devm_kzalloc() to allocate our driver data, so we can eliminate its
kfree() from the device removal and error cleanup paths.

Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
arch/arm/common/sa1111.c

index 303c628..f2ce21c 100644 (file)
@@ -696,7 +696,7 @@ static int __sa1111_probe(struct device *me, struct resource *mem, int irq)
        if (!pd)
                return -EINVAL;
 
-       sachip = kzalloc(sizeof(struct sa1111), GFP_KERNEL);
+       sachip = devm_kzalloc(me, sizeof(struct sa1111), GFP_KERNEL);
        if (!sachip)
                return -ENOMEM;
 
@@ -808,7 +808,6 @@ static int __sa1111_probe(struct device *me, struct resource *mem, int irq)
  err_clkput:
        clk_put(sachip->clk);
  err_free:
-       kfree(sachip);
        return ret;
 }
 
@@ -847,7 +846,6 @@ static void __sa1111_remove(struct sa1111 *sachip)
 
        iounmap(sachip->base);
        clk_put(sachip->clk);
-       kfree(sachip);
 }
 
 struct sa1111_save_data {