mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-22 21:10:07 +00:00
7a6ca82f80
The generic Linux struct_stat misses the conditionals to use bits/struct_stat_time64_helper.h in the __USE_TIME_BITS64 for architecture that uses __TIMESIZE == 32 (currently csky and nios2). Since newer ports should not support 32 bit time_t, the generic implementation should be used as default. For arm, hppa, and sh a copy of default struct_stat is added, while for csky and nios a new one based on generic is used, along with conditionals to use bits/struct_stat_time64_helper.h. The default struct_stat is also replaced with the generic one. Checked on aarch64-linux-gnu and arm-linux-gnueabihf. |
||
---|---|---|
.. | ||
bits | ||
wordsize-32 | ||
____longjmp_chk.c | ||
chmod.c | ||
chown.c | ||
dl-origin.c | ||
dup2.c | ||
epoll_create.c | ||
inotify_init.c | ||
lchown.c | ||
link.c | ||
Makefile | ||
mkdir.c | ||
readlink.c | ||
README | ||
rmdir.c | ||
symlink.c | ||
syscalls.list | ||
sysdep.h | ||
unlink.c | ||
xstatver.h |
This hierarchy supports Linux systems using the new asm-generic/unistd.h, which removes many familiar old syscalls. For example, to implement open(), newer Linux architectures require glibc to invoke the __NR_openat syscall with AT_FDCWD. This hierarchy provides all those implementations. It also provides support for 32-bit platforms using the 64-bit kernel syscall APIs, as the 32-bit ones are no longer provided. Note that newer ILP32 environments (x32 or AArch64:ILP32, for example) are converting to use more 64-bit types in kernel syscalls, so that aspect of this support is in more flux as of this writing.