Patchwork [09/14] rtc: fix device_register() error handling

login
register
mail settings
Submitter Kulikov Vasiliy
Date Sept. 19, 2010, 12:55 p.m.
Message ID <1284900904-24579-1-git-send-email-segooon@gmail.com>
Download mbox | patch
Permalink /patch/65157/
State New
Headers show

Comments

Kulikov Vasiliy - Sept. 19, 2010, 12:55 p.m.
If device_register() fails then call put_device().
See comment to device_register.

Signed-off-by: Vasiliy Kulikov <segooon@gmail.com>
---
 compile tested.

 drivers/rtc/class.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

Patch

diff --git a/drivers/rtc/class.c b/drivers/rtc/class.c
index 565562b..e6539cb 100644
--- a/drivers/rtc/class.c
+++ b/drivers/rtc/class.c
@@ -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);