regmap: Fix memory leak in regmap_init error path
authorLars-Peter Clausen <lars@metafoo.de>
Thu, 10 Nov 2011 17:15:15 +0000 (18:15 +0100)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Thu, 10 Nov 2011 17:41:20 +0000 (17:41 +0000)
If regcache initialization fails regmap_init will currently exit without
freeing work_buf.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
drivers/base/regmap/regmap.c

index 3e30d168eb1d1eca9f9f56cc1cbd5ff6465ec529..b08df85cedff25e1f2b1b3130da11053211d134c 100644 (file)
@@ -229,12 +229,14 @@ struct regmap *regmap_init(struct device *dev,
 
        ret = regcache_init(map);
        if (ret < 0)
-               goto err_map;
+               goto err_free_workbuf;
 
        regmap_debugfs_init(map);
 
        return map;
 
+err_free_workbuf:
+       kfree(map->work_buf);
 err_map:
        kfree(map);
 err:
This page took 0.043174 seconds and 5 git commands to generate.