glibc/sysdeps/unix
Adhemerval Zanella d4d8a12960 Consolidate Linux truncate implementations
This patch consolidates all Linux truncate implementation on
sysdeps/unix/sysv/linux/truncate{64}.c.  It is based on
{INTERNAL,INLINE}_SYSCALL patch [1] to simplify the syscall
construction.

General idea is to build ftruncate iff __OFF_T_MATCHES_OFF64_T is not
defined, otherwise ftruncate64 will be build and ftruncate will be an
alias.  The fallocate will use old compat syscall and pass 32-bit off_t
argument, while fallocate64 will handle the correct off64_t passing using
__ALIGNMENT_ARG and SYSCALL_LL64 macros.

Tested on x86_64, i386, aarch64, and armhf.

	* sysdeps/unix/sysv/linux/arm/truncate64.c: Remove file.
	* sysdeps/unix/sysv/linux/generic/wordsize-32/truncate.c: Likewise.
	* sysdeps/sysv/linux/generic/wordsize-32/truncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips32/truncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/truncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/wordsize-64/truncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/truncate.c: New file.
	* sysdeps/unix/sysv/linux/truncate64.c (truncate64): Use
	INLINE_SYSCALL_CALL, __ALIGNMENT_ARG and SYSCALL_LL64 macros.
	* sysdeps/unix/sysv/linux/mips/mips64/syscalls.list (truncate):
	Remove.
	* sysdeps/unix/sysv/linux/wordsize-64/syscalls.list (truncate):
	Likewise.

[1] https://sourceware.org/ml/libc-alpha/2016-08/msg00646.html
2016-11-09 17:46:17 -02:00
..
alpha Do not override objects in libc.a in other static libraries [BZ #20452] 2016-08-17 14:57:01 +02:00
arm Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
bsd Make padding in struct sockaddr_storage explicit [BZ #20111] 2016-05-23 19:43:09 +02:00
i386 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
inet Move nss directory into sysdeps Subdirs. 2013-02-05 14:32:48 -08:00
mips Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
powerpc Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
sh Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
sysv/linux Consolidate Linux truncate implementations 2016-11-09 17:46:17 -02:00
x86_64 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
clock_gettime.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
clock_nanosleep.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
clock_settime.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
confstr.h
get_child_max.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
getlogin_r.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
getlogin.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
getpagesize.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
grantpt.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
ifreq.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
Implies
make-syscalls.sh Make shebang interpreter directives consistent 2016-01-07 04:03:21 -05:00
Makefile Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s-proto-cancel.S * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d. 2002-12-30 00:12:56 +00:00
s-proto.S
setxid.h Update. 2004-11-12 01:27:04 +00:00
sockatmark.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
stime.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
syscall-template.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
syscall.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
syscalls.list Fix nice getpriority, setpriority namespace (bug 18553). 2015-06-17 20:22:39 +00:00
sysdep.h Add INTERNAL_SYSCALL_CALL 2016-09-26 08:47:13 -07:00