summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLevente Kurusa <levex@linux.com>2014-01-30 23:45:45 (GMT)
committerLinus Torvalds <torvalds@linux-foundation.org>2014-01-31 00:56:54 (GMT)
commit54f5968db9e09de8779b5a5174719af51f1da199 (patch)
treea457a3af2a40fcf184bcfca10123c175ddc3eaf4
parent07bacb3826d613bb651297a201dd2df8dd4fdee5 (diff)
downloadlinux-54f5968db9e09de8779b5a5174719af51f1da199.tar.xz
drivers/video/backlight/lcd.c: call put_device if device_register fails
Currently we kfree the container of the device which failed to register. This is wrong as the last reference is not given up with a put_device call. Also, now that we have put_device() callen, we no longer need the kfree as the new_ld->dev.release function will take care of kfreeing the associated memory. Signed-off-by: Levente Kurusa <levex@linux.com> Acked-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/video/backlight/lcd.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/video/backlight/lcd.c b/drivers/video/backlight/lcd.c
index 93cf15e..7de847d 100644
--- a/drivers/video/backlight/lcd.c
+++ b/drivers/video/backlight/lcd.c
@@ -228,7 +228,7 @@ struct lcd_device *lcd_device_register(const char *name, struct device *parent,
rc = device_register(&new_ld->dev);
if (rc) {
- kfree(new_ld);
+ put_device(&new_ld->dev);
return ERR_PTR(rc);
}