drivers/rtc/class.c: fix device_register() error handling
If device_register() fails then call put_device(). See comment to device_register. Signed-off-by: Vasiliy Kulikov <segooon@gmail.com> Cc: Alessandro Zummo <a.zummo@towertech.it> Cc: Wan ZongShun <mcuos.com@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
d7c7ef908b
commit
59cca865f2
|
@ -158,8 +158,10 @@ struct rtc_device *rtc_device_register(const char *name, struct device *dev,
|
|||
rtc_dev_prepare(rtc);
|
||||
|
||||
err = device_register(&rtc->dev);
|
||||
if (err)
|
||||
if (err) {
|
||||
put_device(&rtc->dev);
|
||||
goto exit_kfree;
|
||||
}
|
||||
|
||||
rtc_dev_add_device(rtc);
|
||||
rtc_sysfs_add_device(rtc);
|
||||
|
|
Loading…
Reference in New Issue