mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
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 <[email protected]> Signed-off-by: Arnd Bergmann <[email protected]>
This commit is contained in:
parent
743f5cdb6c
commit
82b355d161
15 changed files with 18 additions and 0 deletions
|
|
@ -280,6 +280,8 @@ SYSCALL_DEFINE2(fstat, unsigned int, fd, struct __old_kernel_stat __user *, stat
|
|||
|
||||
#endif /* __ARCH_WANT_OLD_STAT */
|
||||
|
||||
#ifdef __ARCH_WANT_NEW_STAT
|
||||
|
||||
#if BITS_PER_LONG == 32
|
||||
# define choose_32_64(a,b) a
|
||||
#else
|
||||
|
|
@ -378,6 +380,7 @@ SYSCALL_DEFINE2(newfstat, unsigned int, fd, struct stat __user *, statbuf)
|
|||
|
||||
return error;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int do_readlinkat(int dfd, const char __user *pathname,
|
||||
char __user *buf, int bufsiz)
|
||||
|
|
|
|||
Loading…
Reference in a new issue