[PATCH] Use Linux-like in struct statx, struct statx_timestamp [BZ #25292]
uint64_t is defined as unsigned long int on 64-bit architectures,
while the kernel defines it as unsigned long long int. It is
desirable to align with Linux types, to match printf format
specifiers and the types of pointers to struct members.
In retrospect, it was a mistake to add struct statx to the
existing <sys/stat.h> header because the header now requires
long long support for _GNU_SOURCE even in cases where struct stat
does not inherently require it. It would have been better to create
a separate <sys/statx.h> header file, to isolate <sys/stat.h> from
any compatibility concerns with legacy compilers.
Tested with build-many-glibcs.py, on x86_64-linux-gnu and
i686-linux-gnu with Linux 5.3 kernel headers, and with historic
kernel headers on powerpc64-linux-gnu and s390x-linux-gnu
(from kernel-headers-3.10.0-327.el7; these headers do not contain
a statx backport).