glibc/posix
Adhemerval Zanella 87686aeefd Consolidate Linux ftruncate implementations
THis patch consolidates all Linux ftruncate implementation on
sysdeps/unix/sysv/linux/ftruncate{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.

	* posix/tst-truncate-common.c: New file.
	* posix/tst-truncate.c: Use tst-truncate-common.c.
	* posix/tst-truncate64.c: Likewise and add LFS tests.
	* sysdeps/unix/sysv/linux/arm/ftruncate64.c: Remove file.
	* sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate.c: Likewise.
	* sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips32/ftruncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/ftruncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/wordsize-64/ftruncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/ftruncate.c: New file.
	* sysdeps/unix/sysv/linux/ftruncate64.c (__ftruncate64): Use
	INLINE_SYSCALL_CALL, __ALIGNMENT_ARG and SYSCALL_LL64 macros.
	[__OFF_T_MATCHES_OFF64_T] (ftruncate): Add alias.
	* sysdeps/unix/sysv/linux/mips/mips64/syscalls.list (ftruncate):
	Remove.
	* sysdeps/unix/sysv/linux/wordsize-64/syscalls.list (ftruncate):
	Likewise.

[1] https://sourceware.org/ml/libc-alpha/2016-08/msg00646.html
2016-11-09 17:46:11 -02:00
..
bits
rxspencer
sys Installed-header hygiene (BZ#20366): time.h types. 2016-09-23 08:43:56 -04:00
_exit.c
alarm.c
annexc.c
BOOST.tests
bsd-getpgrp.c
bug-ga1.c
bug-ga2.c
bug-getopt1.c
bug-getopt2.c
bug-getopt3.c
bug-getopt4.c
bug-getopt5.c
bug-glob1.c
bug-glob2.c
bug-glob3.c
bug-regex1.c
bug-regex2.c
bug-regex3.c
bug-regex4.c
bug-regex5.c
bug-regex6.c
bug-regex7.c
bug-regex8.c
bug-regex9.c
bug-regex10.c
bug-regex11.c
bug-regex12.c
bug-regex13.c
bug-regex14.c
bug-regex15.c
bug-regex16.c
bug-regex17.c
bug-regex18.c
bug-regex19.c
bug-regex20.c
bug-regex21.c
bug-regex22.c
bug-regex23.c
bug-regex24.c
bug-regex25.c
bug-regex26.c
bug-regex27.c
bug-regex28.c
bug-regex29.c
bug-regex30.c
bug-regex31.c
bug-regex31.input
bug-regex32.c
bug-regex33.c
bug-regex34.c
bug-regex35.c
bug-regex36.c
confstr.c
cpio.h
Depend
environ.c
execl.c
execle.c
execlp.c
execv.c
execve.c
execvp.c
execvpe.c
fexecve.c
fnmatch_loop.c
fnmatch.c
fnmatch.h
fork.c
fpathconf.c
gai_strerror.c
gai.conf
get_child_max.c
getaddrinfo.c
getconf-speclist.c
getconf.c
getegid.c
geteuid.c
getgid.c
getgroups.c
getopt1.c
getopt_init.c
getopt_int.h
getopt.c
getopt.h
getpgid.c
getpgrp.c
getpid.c
getppid.c
getresgid.c
getresuid.c
getsid.c
getuid.c
glob64.c
glob.c Properly initialize glob structure with GLOB_BRACE|GLOB_DOOFFS (bug 20707) 2016-10-31 12:36:08 +01:00
glob.h
globtest.c
globtest.sh Properly initialize glob structure with GLOB_BRACE|GLOB_DOOFFS (bug 20707) 2016-10-31 12:36:08 +01:00
group_member.c
init-posix.c
Makefile Consolidate posix_fadvise implementations 2016-10-07 14:16:41 -03:00
nanosleep.c
pathconf.c
pause.c
PCRE.tests
posix_madvise.c
posix-conf-vars.h
posix-conf-vars.list
posix-envs.def
pread64.c
pread.c
ptestcases.h
PTESTS
PTESTS2C.sed
pwrite64.c
pwrite.c
re_comp.h
regcomp.c
regex_internal.c
regex_internal.h
regex.c
regex.h
regexbug1.c
regexec.c
runptests.c
runtests.c
sched_cpualloc.c
sched_cpucount.c
sched_cpufree.c
sched_getaffinity.c
sched_getp.c
sched_gets.c
sched_primax.c
sched_primin.c
sched_rr_gi.c
sched_setaffinity.c
sched_setp.c
sched_sets.c
sched_yield.c
sched.h Installed-header hygiene (BZ#20366): time.h types. 2016-09-23 08:43:56 -04:00
setgid.c
setpgid.c
setpgrp.c
setresgid.c
setresuid.c
setsid.c
setuid.c
sleep.c
spawn_faction_addclose.c
spawn_faction_adddup2.c
spawn_faction_addopen.c
spawn_faction_destroy.c
spawn_faction_init.c
spawn_int.h
spawn_valid_fd.c
spawn.c
spawn.h
spawnattr_destroy.c
spawnattr_getdefault.c
spawnattr_getflags.c
spawnattr_getpgroup.c
spawnattr_getschedparam.c
spawnattr_getschedpolicy.c
spawnattr_getsigmask.c
spawnattr_init.c
spawnattr_setdefault.c
spawnattr_setflags.c
spawnattr_setpgroup.c
spawnattr_setschedparam.c
spawnattr_setschedpolicy.c
spawnattr_setsigmask.c
spawni.c
spawnp.c
sysconf.c
tar.h
test-vfork.c
testcases.h
testfnm.c
TESTS
TESTS2C.sed
times.c
transbug.c
tst-boost.c
tst-chmod.c
tst-cpucount.c
tst-cpuset.c
tst-dir.c
tst-exec-static.c
tst-exec.c
tst-execl1.c
tst-execl2.c
tst-execle1.c
tst-execle2.c
tst-execlp1.c
tst-execlp2.c
tst-execv1.c
tst-execv2.c
tst-execve1.c
tst-execve2.c
tst-execvp1.c
tst-execvp2.c
tst-execvp3.c
tst-execvp4.c
tst-execvpe1.c
tst-execvpe2.c
tst-execvpe3.c
tst-execvpe4.c
tst-execvpe5.c
tst-execvpe6.c
tst-fnmatch2.c
tst-fnmatch3.c
tst-fnmatch.c
tst-fnmatch.input
tst-fork.c
tst-getaddrinfo2.c
tst-getaddrinfo3.c
tst-getaddrinfo4.c
tst-getaddrinfo5.c
tst-getaddrinfo.c
tst-getconf.sh
tst-getopt_long1.c
tst-gnuglob.c
tst-mmap-offset.c
tst-mmap.c
tst-nanosleep.c
tst-nice.c
tst-pathconf.c
tst-pcre.c
tst-posix_fadvise64.c Consolidate posix_fadvise implementations 2016-10-07 14:16:41 -03:00
tst-posix_fadvise-common.c Consolidate posix_fadvise implementations 2016-10-07 14:16:41 -03:00
tst-posix_fadvise.c Consolidate posix_fadvise implementations 2016-10-07 14:16:41 -03:00
tst-posix_spawn-fd.c
tst-preadwrite64.c
tst-preadwrite-common.c
tst-preadwrite.c
tst-regex2.c
tst-regex.c
tst-regexloc.c
tst-rfc3484-2.c
tst-rfc3484-3.c
tst-rfc3484.c
tst-rxspencer-no-utf8.c
tst-rxspencer.c
tst-spawn2.c
tst-spawn3.c posix: Fix open file action for posix_spawn on Linux 2016-09-28 14:07:35 -07:00
tst-spawn-static.c
tst-spawn.c
tst-sysconf.c
tst-truncate64.c Consolidate Linux ftruncate implementations 2016-11-09 17:46:11 -02:00
tst-truncate-common.c Consolidate Linux ftruncate implementations 2016-11-09 17:46:11 -02:00
tst-truncate.c Consolidate Linux ftruncate implementations 2016-11-09 17:46:11 -02:00
tst-vfork1.c
tst-vfork2.c
tst-vfork3.c
tst-waitid.c
tstgetopt.c
uname-values.h
uname.c
unistd.h
Versions
vfork.c
wait3.c
wait4.c
wait.c
wait.h
waitid.c
waitpid.c
wordexp-test.c
wordexp-tst.sh
wordexp.c
wordexp.h