]> asedeno.scripts.mit.edu Git - linux.git/commit
y2038: Remove newstat family from default syscall set
authorArnd Bergmann <arnd@arndb.de>
Fri, 13 Apr 2018 09:50:12 +0000 (11:50 +0200)
committerArnd Bergmann <arnd@arndb.de>
Wed, 29 Aug 2018 13:42:20 +0000 (15:42 +0200)
commit82b355d161c9525ab8838cc27d3200bc3bc9082d
treedb0e1dc34aad8e44b2c4a19dd83652dc33390422
parent743f5cdb6cec33d2300922f6b1b1670a572595ad
y2038: Remove newstat family from default syscall set

We have four generations of stat() syscalls:
- the oldstat syscalls that are only used on the older architectures
- the newstat family that is used on all 64-bit architectures but
  lacked support for large files on 32-bit architectures.
- the stat64 family that is used mostly on 32-bit architectures to
  replace newstat
- statx() to replace all of the above, adding 64-bit timestamps among
  other things.

We already compile stat64 only on those architectures that need it,
but newstat is always built, including on those that don't reference
it. This adds a new __ARCH_WANT_NEW_STAT symbol along the lines of
__ARCH_WANT_OLD_STAT and __ARCH_WANT_STAT64 to control compilation of
newstat. All architectures that need it use an explict define, the
others now get a little bit smaller, and future architecture (including
64-bit targets) won't ever see it.

Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
15 files changed:
arch/alpha/include/asm/unistd.h
arch/arm/include/asm/unistd.h
arch/arm64/include/uapi/asm/unistd.h
arch/ia64/include/asm/unistd.h
arch/m68k/include/asm/unistd.h
arch/microblaze/include/asm/unistd.h
arch/mips/include/asm/unistd.h
arch/parisc/include/asm/unistd.h
arch/powerpc/include/asm/unistd.h
arch/s390/include/asm/unistd.h
arch/sh/include/asm/unistd.h
arch/sparc/include/asm/unistd.h
arch/x86/include/asm/unistd.h
arch/xtensa/include/asm/unistd.h
fs/stat.c