diff options
| -rw-r--r-- | drivers/base/regmap/regmap.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c index 0eef4da1ac61..20663f8dae45 100644 --- a/drivers/base/regmap/regmap.c +++ b/drivers/base/regmap/regmap.c | |||
| @@ -168,13 +168,11 @@ struct regmap *regmap_init(struct device *dev, | |||
| 168 | map->work_buf = kmalloc(map->format.buf_size, GFP_KERNEL); | 168 | map->work_buf = kmalloc(map->format.buf_size, GFP_KERNEL); |
| 169 | if (map->work_buf == NULL) { | 169 | if (map->work_buf == NULL) { |
| 170 | ret = -ENOMEM; | 170 | ret = -ENOMEM; |
| 171 | goto err_bus; | 171 | goto err_map; |
| 172 | } | 172 | } |
| 173 | 173 | ||
| 174 | return map; | 174 | return map; |
| 175 | 175 | ||
| 176 | err_bus: | ||
| 177 | module_put(map->bus->owner); | ||
| 178 | err_map: | 176 | err_map: |
| 179 | kfree(map); | 177 | kfree(map); |
| 180 | err: | 178 | err: |
| @@ -188,7 +186,6 @@ EXPORT_SYMBOL_GPL(regmap_init); | |||
| 188 | void regmap_exit(struct regmap *map) | 186 | void regmap_exit(struct regmap *map) |
| 189 | { | 187 | { |
| 190 | kfree(map->work_buf); | 188 | kfree(map->work_buf); |
| 191 | module_put(map->bus->owner); | ||
| 192 | kfree(map); | 189 | kfree(map); |
| 193 | } | 190 | } |
| 194 | EXPORT_SYMBOL_GPL(regmap_exit); | 191 | EXPORT_SYMBOL_GPL(regmap_exit); |
