Re: [RFC PATCH v3 0/5] y2038 in-kernel interface changes for drivers/rtc

From: John Stultz
Date: Wed Nov 19 2014 - 18:53:46 EST


On Tue, Nov 18, 2014 at 3:15 AM, pang.xunlei <pang.xunlei@xxxxxxxxxx> wrote:
> On 32bit systems, the kernel uses a 32bit signed time_t value
> for seconds since 1970-01-01:00:00:00. This will overflow at
> 2038-01-19 03:14:08, and is widely known as the y2038 problem.
>
> To address this, the plan is to create 64bit internal interfaces
> which are 2038 safe, mark the unsafe versions as deprecated and
> then convert subsystems one by one over to the new interfaces.
> Once all users are converted, the deprecated internal functions
> will be removed.
>
> NOTE: In some cases, there are issues with 32bit values that are
> unsigned, and thus become y2106 issues. Since its somewhat simpler
> to unify the time types, we'll try to convert those usage to 64bit
> where it can be easily done. In those cases where a fix would be
> overly complicated, we'll simply explicitly mark the limitation.
>
> This patchset introduces the 64bit interfaces needed to convert
> the drivers/rtc subsystem, and to keep it relatively short some
> patches to demonstrate how the conversion will be done. If the
> feedback is positive on this series, we'll provide the full
> conversion series as well.
>
> pang.xunlei (5):
> time: Provide y2038 safe do_settimeofday() replacement
> time: Provide y2038 safe timekeeping_inject_sleeptime() replacement
> time: Provide y2038 safe mktime() replacement
> rtc/lib: Provide y2038 safe rtc_tm_to_time()/rtc_time_to_tm()
> replacement
> rtc/mc13xxx: Eliminate time problems

Ok, I've queued these up for testing in my tree. Hope to send them off
to Thomas for 3.19.

thanks
-john
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/