[OE-core] 32 bit time_t in openembedded

Phil Blundell pb at pbcl.net
Tue Sep 8 12:18:53 UTC 2015


On Tue, 2015-09-08 at 13:44 +0200, Umut Tezduyar Lindskog wrote:
> Can 32 bits ISA handle year 2038 problem in openembedded?

Not generically.  But this is not an OE-level problem; the issue is more
that the underlying libraries and kernel ABIs are not currently
Y2038-safe.  Fixing this is not really within the scope of OE and is
more a matter for the respective upstream maintainers to deal with.

See for example some previous discussion of the linux kernel
implications at http://lwn.net/Articles/643407/

>Our ISA is 32 bits and we are using relatively new kernel with
>relatively old glibc (2.15). We are using RTC chips which come with a
>random date/time initialized. We started seeing boot problems in
>systemd if the random value of RTC is newer than 2038.

If this is all you're concerned about and you don't seriously expect
your product to be still in use in 2038 then you could add a sanity
check at bootup to reset the clock to some reasonable default if the
value in the RTC is either known to be in the past or is implausibly far
in the future.  

If you do need full Y2038 support (which wouldn't be totally
unreasonable, given that the end of the epoch is now less than 25 years
away and at least some of us will probably live long enough to see it!)
then you would need to do some more substantial development work and you
should probably contact linux-kernel and/or libc-alpha in the first
instance.  Or update to a natively 64-bit system.

p.





More information about the Openembedded-core mailing list