[PATCH] clocksource: decrement reference count when device_register() fail

From: Yangtao Li
Date: Mon Jan 21 2019 - 10:36:25 EST


device_register() may fail, use put_device() giving up the refconut
to avoid refcount leak.

Signed-off-by: Yangtao Li <tiny.windzz@xxxxxxxxx>
---
kernel/time/clocksource.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/kernel/time/clocksource.c b/kernel/time/clocksource.c
index 3bcc19ceb073..0a830fedc7ef 100644
--- a/kernel/time/clocksource.c
+++ b/kernel/time/clocksource.c
@@ -1183,8 +1183,11 @@ static int __init init_clocksource_sysfs(void)
{
int error = subsys_system_register(&clocksource_subsys, NULL);

- if (!error)
+ if (!error) {
error = device_register(&device_clocksource);
+ if (error)
+ put_device(&device_clocksource);
+ }

return error;
}
--
2.17.0