ds2760_battery: Use devm_kzalloc()

Use devm_kzalloc() to make cleanup paths more simple.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
This commit is contained in:
Jingoo Han 2013-03-11 15:32:44 +09:00 committed by Anton Vorontsov
parent 2cb12122b8
commit 4ec730dc8c

View File

@ -512,7 +512,7 @@ static int ds2760_battery_probe(struct platform_device *pdev)
int retval = 0; int retval = 0;
struct ds2760_device_info *di; struct ds2760_device_info *di;
di = kzalloc(sizeof(*di), GFP_KERNEL); di = devm_kzalloc(&pdev->dev, sizeof(*di), GFP_KERNEL);
if (!di) { if (!di) {
retval = -ENOMEM; retval = -ENOMEM;
goto di_alloc_failed; goto di_alloc_failed;
@ -576,7 +576,6 @@ static int ds2760_battery_probe(struct platform_device *pdev)
workqueue_failed: workqueue_failed:
power_supply_unregister(&di->bat); power_supply_unregister(&di->bat);
batt_failed: batt_failed:
kfree(di);
di_alloc_failed: di_alloc_failed:
success: success:
return retval; return retval;
@ -590,7 +589,6 @@ static int ds2760_battery_remove(struct platform_device *pdev)
cancel_delayed_work_sync(&di->set_charged_work); cancel_delayed_work_sync(&di->set_charged_work);
destroy_workqueue(di->monitor_wqueue); destroy_workqueue(di->monitor_wqueue);
power_supply_unregister(&di->bat); power_supply_unregister(&di->bat);
kfree(di);
return 0; return 0;
} }