This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
struct elf_prstatus and Y2038 (was: Re: [PATCH v4 06/13] C-SKY: Linux ABI)
On 09/12/2018 05:34 PM, Arnd Bergmann wrote:
Speaking of this file, I think we still need a solution for elf_prstatus
containing a 'timeval' after time_t becomes 64-bit wide. I actually
have a patch to change the kernel header file declaring the
same structure, but I had not realized that glibc contains another
copy.
https://sourceware.org/glibc/wiki/Y2038ProofnessDesign mentions
that type, but not what to do about it. What I did in the kernel
was to change the type of pr_utime/pr_stime/pr_cutime/pr_cstime
to something that keeps using 'long' fields. Given that we can't
change the file format in an incompatible way, and that 32-bit
is sufficient here, that seemed like the most appropriate solution.
Keeping 32 bits there looks reasonable. I thought we had a port where
time_t isn't long, but that doesn't seem to be the case.
Ah, I think it's actually s390, where suseconds_t is int, not long.
Presumably that will need a special case so that existing format
specifiers etc. are not disturbed unnecessarily.
Thanks,
Florian