On Sat, Mar 20, 2010 at 03:12:43PM +0100, Wolfram Sang wrote: > 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. > > Signed-off-by: Wolfram Sang <[email protected]> > Cc: Ryan Mallon <[email protected]> > Cc: Anton Vorontsov <[email protected]> > --- > drivers/power/ds2782_battery.c | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/power/ds2782_battery.c b/drivers/power/ds2782_battery.c > index da14f37..6971b85 100644 > --- a/drivers/power/ds2782_battery.c > +++ b/drivers/power/ds2782_battery.c > @@ -236,7 +236,7 @@ static int ds2782_battery_remove(struct i2c_client > *client) > idr_remove(&battery_id, info->id); > mutex_unlock(&battery_lock); > > - i2c_set_clientdata(client, info); > + i2c_set_clientdata(client, NULL); [...] > - i2c_set_clientdata(client, info); > + i2c_set_clientdata(client, NULL);
Why is this needed? I'd vote for just removing set_clientdata in fail/remove paths. Thanks, -- Anton Vorontsov email: [email protected] irc://irc.freenode.net/bd2 -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
