summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRiwen Lu <luriwen@kylinos.cn>2022-01-06 16:46:09 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-02-08 18:24:34 +0100
commit66c5aa5726bc94bfab924e97928e091f09d776ba (patch)
treeb13974cdd78d4da19bd839ee1921064089135da0
parent2ffe36c9c4b6f4a93041d3c5931c66107a2fdbfe (diff)
downloadlinux-66c5aa5726bc94bfab924e97928e091f09d776ba.tar.gz
linux-66c5aa5726bc94bfab924e97928e091f09d776ba.tar.bz2
linux-66c5aa5726bc94bfab924e97928e091f09d776ba.zip
rtc: cmos: Evaluate century appropriate
commit ff164ae39b82ee483b24579c8e22a13a8ce5bd04 upstream. 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@kylinos.cn> Acked-by: Eric Wong <e@80x24.org> Reviewed-by: Mateusz Jończyk <mat.jonczyk@o2.pl> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Link: https://lore.kernel.org/r/20220106084609.1223688-1-luriwen@kylinos.cn Signed-off-by: Mateusz Jończyk <mat.jonczyk@o2.pl> # preparation for stable Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/rtc/rtc-mc146818-lib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/rtc/rtc-mc146818-lib.c b/drivers/rtc/rtc-mc146818-lib.c
index 2ecd8752b088..5add637c9ad2 100644
--- a/drivers/rtc/rtc-mc146818-lib.c
+++ b/drivers/rtc/rtc-mc146818-lib.c
@@ -83,7 +83,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;
/*