[BRLTTY] [PATCH v1 1/1] fix input_event time related compile fail with MUSL

Samuel Thibault samuel.thibault at ens-lyon.org
Sun Jun 7 14:35:19 EDT 2020


Dave Mielke, le dim. 07 juin 2020 14:21:01 -0400, a ecrit:
> Okay: On a system running the 5.6 kernel, the #ifdef in <linux/input.h> to
> still use struct timeval is?
> 
> #if (__BITS_PER_LONG != 32 || !defined(__USE_TIME_BITS64)) && !defined(__KERNEL__)

The problem is: it's the converse.

All of this is about supporting >2038 years on 32bit systems, which
can't be done without breaking the ABI. Currently there is some #define
to switch to the *new* ABI, but at some point we will just compile all
programs with the new ABI, and thus there is no flag to say "I want the
old ABI", since that's deemed to be unsupported and removed in 2038
anyway.

I guess the "time" field should be been named __time, as in: you are not
supposed to use it. What you'd be allowed to use is input_event_sec and
input_event_usec only. Yes, that means you can't happily use
compatibility with struct timeval. That's the problem with the different
time structures, you do have to convert from one to another.

Samuel


More information about the BRLTTY mailing list