y2038: Remove stat64 family from default syscall set
authorArnd Bergmann <arnd@arndb.de>
Fri, 13 Apr 2018 10:19:47 +0000 (12:19 +0200)
committerArnd Bergmann <arnd@arndb.de>
Wed, 29 Aug 2018 13:42:20 +0000 (15:42 +0200)
commitbf4b6a7d371e4d2a23a9d545bee908f67d32b3ea
treeeb4d85ea17fd4d5ffed96f264299f78350f00117
parent82b355d161c9525ab8838cc27d3200bc3bc9082d
y2038: Remove stat64 family from default syscall set

New architectures should no longer need stat64, which is not y2038
safe and has been replaced by statx(). This removes the 'select
__ARCH_WANT_STAT64' statement from asm-generic/unistd.h and instead
moves it into the respective asm/unistd.h UAPI header files for each
architecture that uses it today.

In the generic file, the system call number and entry points are now
made conditional, so newly added architectures (e.g. riscv32 or csky)
will never need to carry backwards compatiblity for it.

arm64 is the only 64-bit architecture using the asm-generic/unistd.h
file, and it already sets __ARCH_WANT_NEW_STAT in its headers, and I
use the same #ifdef here: future 64-bit architectures therefore won't
see newstat or stat64 any more. They don't suffer from the y2038 time_t
overflow, but for consistency it seems best to also let them use statx().

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/arc/include/uapi/asm/unistd.h
arch/c6x/include/uapi/asm/unistd.h
arch/h8300/include/uapi/asm/unistd.h
arch/hexagon/include/uapi/asm/unistd.h
arch/nds32/include/uapi/asm/unistd.h
arch/nios2/include/uapi/asm/unistd.h
arch/openrisc/include/uapi/asm/unistd.h
arch/unicore32/include/uapi/asm/unistd.h
include/asm-generic/unistd.h
include/uapi/asm-generic/unistd.h