diff options
author | David S. Miller <davem@davemloft.net> | 2008-09-10 13:36:13 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-09-10 13:36:13 -0700 |
commit | ab138c031f72f6d030afa1a06a3a537e85ae843e (patch) | |
tree | 96dbd2725e1f9cc11ed5f4639c257744dfae090f /arch/sparc/kernel | |
parent | 90158d84eb20fa15e3c8010b570f3ea2c925121d (diff) | |
download | op-kernel-dev-ab138c031f72f6d030afa1a06a3a537e85ae843e.zip op-kernel-dev-ab138c031f72f6d030afa1a06a3a537e85ae843e.tar.gz |
sparc32: Need to close openned RTC device just like sparc64.
Otherwise we get refcount problems.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/kernel')
-rw-r--r-- | arch/sparc/kernel/time.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/sparc/kernel/time.c b/arch/sparc/kernel/time.c index 698c450..fa54d58 100644 --- a/arch/sparc/kernel/time.c +++ b/arch/sparc/kernel/time.c @@ -337,9 +337,12 @@ static int sbus_do_settimeofday(struct timespec *tv) static int set_rtc_mmss(unsigned long secs) { struct rtc_device *rtc = rtc_class_open("rtc0"); + int err = -1; - if (rtc) - return rtc_set_mmss(rtc, secs); + if (rtc) { + err = rtc_set_mmss(rtc, secs); + rtc_class_close(rtc); + } - return -1; + return err; } |