diff options
author | Wolfram Sang <w.sang@pengutronix.de> | 2010-04-01 06:27:44 -0400 |
---|---|---|
committer | Anton Vorontsov <cbouatmailru@gmail.com> | 2010-04-06 12:07:05 -0400 |
commit | a009d29ea104c1bd8805a20018469897c2c2263c (patch) | |
tree | 18b980bf8aecea51f057d7e8c3ab1ffae111213f /drivers/power | |
parent | db217dece3003df0841bacf9556b5c06aa097dae (diff) |
ds2782_battery: Fix clientdata on removal
Probably due to a copy & paste bug, clientdata was set again to the data
structure (which is freed immediately afterwards) when it should be
NULLed. Just remove the calls as the i2c-core does this automatically
now.
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Cc: Ryan Mallon <ryan@bluewatersys.com>
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Cc: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
Diffstat (limited to 'drivers/power')
-rw-r--r-- | drivers/power/ds2782_battery.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/power/ds2782_battery.c b/drivers/power/ds2782_battery.c index da14f374cb60..305d463a880c 100644 --- a/drivers/power/ds2782_battery.c +++ b/drivers/power/ds2782_battery.c | |||
@@ -236,8 +236,6 @@ static int ds2782_battery_remove(struct i2c_client *client) | |||
236 | idr_remove(&battery_id, info->id); | 236 | idr_remove(&battery_id, info->id); |
237 | mutex_unlock(&battery_lock); | 237 | mutex_unlock(&battery_lock); |
238 | 238 | ||
239 | i2c_set_clientdata(client, info); | ||
240 | |||
241 | kfree(info); | 239 | kfree(info); |
242 | return 0; | 240 | return 0; |
243 | } | 241 | } |
@@ -289,7 +287,6 @@ static int ds2782_battery_probe(struct i2c_client *client, | |||
289 | fail_register: | 287 | fail_register: |
290 | kfree(info->battery.name); | 288 | kfree(info->battery.name); |
291 | fail_name: | 289 | fail_name: |
292 | i2c_set_clientdata(client, info); | ||
293 | kfree(info); | 290 | kfree(info); |
294 | fail_info: | 291 | fail_info: |
295 | mutex_lock(&battery_lock); | 292 | mutex_lock(&battery_lock); |