summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorJohan Hovold <johan@kernel.org>2016-11-01 13:49:56 +0300
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2016-11-02 07:10:04 +0300
commitceb75787bc75d0a7b88519ab8a68067ac690f55a (patch)
tree8f671bacb6cc8cfdbcf7b79d39b0d6d073fda3c5 /kernel
parenta909d3e636995ba7c349e2ca5dbb528154d4ac30 (diff)
downloadlinux-ceb75787bc75d0a7b88519ab8a68067ac690f55a.tar.xz
PM / sleep: fix device reference leak in test_suspend
Make sure to drop the reference taken by class_find_device() after opening the RTC device. Fixes: 77437fd4e61f (pm: boot time suspend selftest) Signed-off-by: Johan Hovold <johan@kernel.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/power/suspend_test.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/power/suspend_test.c b/kernel/power/suspend_test.c
index 084452e34a12..bdff5ed57f10 100644
--- a/kernel/power/suspend_test.c
+++ b/kernel/power/suspend_test.c
@@ -203,8 +203,10 @@ static int __init test_suspend(void)
/* RTCs have initialized by now too ... can we use one? */
dev = class_find_device(rtc_class, NULL, NULL, has_wakealarm);
- if (dev)
+ if (dev) {
rtc = rtc_class_open(dev_name(dev));
+ put_device(dev);
+ }
if (!rtc) {
printk(warn_no_rtc);
return 0;