glibc/sysdeps/unix/sysv/linux/mips
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
..
bits
mips32 Consolidate Linux truncate implementations 2016-11-09 17:46:17 -02:00
mips64 Consolidate Linux truncate implementations 2016-11-09 17:46:17 -02:00
sys Make MIPS <sys/user.h> self-contained. 2016-11-04 16:44:23 +00:00
Implies
Makefile XFAIL check-execstack for MIPS. 2016-11-04 16:42:37 +00:00
Versions
____longjmp_chk.c
_test_and_set.c
arch-fork.h
brk.c
clone.S
configure
configure.ac
dl-cache.h
dl-static.c
getcontext.S
getmsg.c
getrlimit64.c
getsysstats.c
init-first.c
ipc_priv.h
kernel-features.h
kernel_rt_sigframe.h
kernel_sigaction.h
kernel_stat.h
kernel_termios.h
ldsodefs.h
libc-abis
libc-vdso.h
makecontext.S
pipe.S
profil-counter.h
pt-vfork.S
putmsg.c
readelflib.c
register-dump.h
setcontext.S
setrlimit64.c
shlib-versions
sigaction.c
sigcontextinfo.h
swapcontext.S
syscalls.list
sysdep-cancel.h
ucontext_i.sym
ustat.c
vfork.S
xstatconv.c