回复: 回复: 回复: [PATCH] MIPS: fix y2106 problem on N64 with statx
yunqiang.su@cipunited.com
yunqiang.su@cipunited.com
Fri Mar 19 01:00:26 GMT 2021
> >>
> >> Even though it is not the default, non LFS interface are legacy ones.
> >> y2038 support, for instance, is only supported with LFS interfaces.
> >>
> >> So it is up to you if you want to fix on fstatat.c, it should also
> >> fix the s390 issue with missing nanosecond support.
> >>
> >
> > fstatat is not recommend used by any new write code?
> > All new write code should use fstatat64?
>
> It is an implementation detail in fact, glibc fstatat64 is the interface with LFS
> support. On ABIs with default LFS support it does matter whether you use
> fstatat or fstatat64 (fstatat is fact an alias to fstatat64).
>
> On ABIs with LFS support (most of legacy 32-bits and some of 64-bit) fstatat is
> used as default and fstatat64 is used as an asm alias if
> _FILE_OFFSET_BITS=64 is defined or provided in the namespace if
> _LARGEFILE64_SOURCE is defined.
Here, what I care about it only MIPS N64 (aka pure 64).
The bad news is that neither _FILE_OFFSET_BITS=64 nor _LARGEFILE64_SOURCE is defined by default.
So, I guess that we have to fix fstatat at the same time, in fact it is quite simple: just call __fstatat64 is OK.
>
> I think we should now make LFS as default [1], at least for legacy 32-bit ABIs
> even though they are still namespace issues [2] [3].
Another bad news for s390-32, its statx has no nanosecond value neither.
>
> [1] https://sourceware.org/bugzilla/show_bug.cgi?id=13047
> [2] https://sourceware.org/bugzilla/show_bug.cgi?id=14106
> [3] https://sourceware.org/bugzilla/show_bug.cgi?id=15766
More information about the Libc-alpha
mailing list