Commit 36839287204f1c419907d3873f1e45062000e8a2

Authored by Guenter Roeck
Committed by Guenter Roeck
1 parent dd285ad737

hwmon: (ltc4261) Convert to use devm_kzalloc

Marginally less code and eliminate the possibility of memory leaks.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>

Showing 1 changed file with 4 additions and 11 deletions Side-by-side Diff

drivers/hwmon/ltc4261.c
... ... @@ -235,11 +235,9 @@
235 235 return -ENODEV;
236 236 }
237 237  
238   - data = kzalloc(sizeof(*data), GFP_KERNEL);
239   - if (!data) {
240   - ret = -ENOMEM;
241   - goto out_kzalloc;
242   - }
  238 + data = devm_kzalloc(&client->dev, sizeof(*data), GFP_KERNEL);
  239 + if (!data)
  240 + return -ENOMEM;
243 241  
244 242 i2c_set_clientdata(client, data);
245 243 mutex_init(&data->update_lock);
... ... @@ -250,7 +248,7 @@
250 248 /* Register sysfs hooks */
251 249 ret = sysfs_create_group(&client->dev.kobj, &ltc4261_group);
252 250 if (ret)
253   - goto out_sysfs_create_group;
  251 + return ret;
254 252  
255 253 data->hwmon_dev = hwmon_device_register(&client->dev);
256 254 if (IS_ERR(data->hwmon_dev)) {
... ... @@ -262,9 +260,6 @@
262 260  
263 261 out_hwmon_device_register:
264 262 sysfs_remove_group(&client->dev.kobj, &ltc4261_group);
265   -out_sysfs_create_group:
266   - kfree(data);
267   -out_kzalloc:
268 263 return ret;
269 264 }
270 265  
... ... @@ -274,8 +269,6 @@
274 269  
275 270 hwmon_device_unregister(data->hwmon_dev);
276 271 sysfs_remove_group(&client->dev.kobj, &ltc4261_group);
277   -
278   - kfree(data);
279 272  
280 273 return 0;
281 274 }