Re: [PATCH] PM / sleep: switch to rtc_time64_to_tm/rtc_tm_to_time64

From: Rafael J. Wysocki
Date: Fri Dec 20 2019 - 04:18:31 EST


On Tuesday, December 10, 2019 6:05:40 PM CET Alexandre Belloni wrote:
> Call the 64bit versions of rtc_tm time conversion to avoid the y2038 issue.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx>
> ---
> kernel/power/suspend_test.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/kernel/power/suspend_test.c b/kernel/power/suspend_test.c
> index 60564b58de07..e1ed58adb69e 100644
> --- a/kernel/power/suspend_test.c
> +++ b/kernel/power/suspend_test.c
> @@ -70,7 +70,7 @@ static void __init test_wakealarm(struct rtc_device *rtc, suspend_state_t state)
> static char info_test[] __initdata =
> KERN_INFO "PM: test RTC wakeup from '%s' suspend\n";
>
> - unsigned long now;
> + time64_t now;
> struct rtc_wkalrm alm;
> int status;
>
> @@ -81,10 +81,10 @@ static void __init test_wakealarm(struct rtc_device *rtc, suspend_state_t state)
> printk(err_readtime, dev_name(&rtc->dev), status);
> return;
> }
> - rtc_tm_to_time(&alm.time, &now);
> + now = rtc_tm_to_time64(&alm.time);
>
> memset(&alm, 0, sizeof alm);
> - rtc_time_to_tm(now + TEST_SUSPEND_SECONDS, &alm.time);
> + rtc_time64_to_tm(now + TEST_SUSPEND_SECONDS, &alm.time);
> alm.enabled = true;
>
> status = rtc_set_alarm(rtc, &alm);
>

Applied (with a slightly modified changelog) as 5.6 material, thanks!