[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220106084609.1223688-1-luriwen@kylinos.cn>
Date: Thu, 6 Jan 2022 16:46:09 +0800
From: Riwen Lu <luriwen@...inos.cn>
To: a.zummo@...ertech.it, alexandre.belloni@...tlin.com, e@...24.org
Cc: linux-rtc@...r.kernel.org, linux-kernel@...r.kernel.org,
Riwen Lu <luriwen@...inos.cn>
Subject: [PATCH v1] rtc: cmos: Evaluate century appropriate
There's limiting the year to 2069. When setting the rtc year to 2070,
reading it returns 1970. Evaluate century starting from 19 to count the
correct year.
$ sudo date -s 20700106
Mon 06 Jan 2070 12:00:00 AM CST
$ sudo hwclock -w
$ sudo hwclock -r
1970-01-06 12:00:49.604968+08:00
Fixes: 2a4daadd4d3e5071 ("rtc: cmos: ignore bogus century byte")
Signed-off-by: Riwen Lu <luriwen@...inos.cn>
---
drivers/rtc/rtc-mc146818-lib.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/rtc/rtc-mc146818-lib.c b/drivers/rtc/rtc-mc146818-lib.c
index dcfaf09946ee..2065842f775d 100644
--- a/drivers/rtc/rtc-mc146818-lib.c
+++ b/drivers/rtc/rtc-mc146818-lib.c
@@ -104,7 +104,7 @@ unsigned int mc146818_get_time(struct rtc_time *time)
time->tm_year += real_year - 72;
#endif
- if (century > 20)
+ if (century > 19)
time->tm_year += (century - 19) * 100;
/*
--
2.25.1
No virus found
Checked by Hillstone Network AntiVirus
Powered by blists - more mailing lists