| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch consolidates all Linux lseek/lseek64/llseek implementation
in on on sysdeps/unix/sysv/linux/lseek{64}.c. It also removes the llseek
file and instead consolidate the LFS lseek implementation on lseek64.c
as for other LFS symbols implementations.
The general idea is:
- lseek: ABIs that not define __OFF_T_MATCHES_OFF64_T will preferable
use __NR__llseek if kernel supports it, otherwise they will use __NR_lseek.
ABIs that defines __OFF_T_MATCHES_OFF64_T won't produce any symbol.
- lseek64: ABIs with __OFF_T_MATCHES_OFF64_T will preferable use __NR_lseek
(since it will use 64-bit arguments without low/high splitting) and
__NR__llseek if __NR_lseek is not defined (for some ILP32 ports).
- llseek: files will be removed and symbols will be aliased ot lseek64.
ABI without __OFF_T_MATCHES_OFF64_T and without __NR_llseek (basically MIPS64n32
so far) are covered by building lseek with off_t as expected and lseek64
using __NR_lseek (as expected for off64_t being passed using 64-bit registers).
For this consolidation I mantained the x32 assembly specific implementation
because to correctly fix this it would required both the x32 fix for
{INLINE,INTERNAL}_SYSCALL [1] and a wrapper to correctly subscribe it to
return 64 bits instead of default 32 bits (as for times). It could a future
cleanup.
It is based on my previous {INTERNAL,INLINE}_SYSCALL_CALL macro [2],
although it is mainly for simplification.
Tested on x86_64, i686, aarch64, armhf, and powerpc64le.
* nptl/Makefile (libpthread-routines): Remove ptw-llseek and add
ptw-lseek64.
* sysdeps/unix/sysv/linux/Makefile (sysdeps_routines): Remove llseek.
* sysdeps/unix/sysv/linux/alpha/Makefile (sysdeps_routines):
Likewise.
* sysdeps/unix/sysv/linux/generic/wordsize-32/llseek.c: Remove file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/lseek.c: Remove file.
* sysdeps/unix/sysv/linux/mips/mips64/llseek.c: Likewise.
* sysdeps/unix/sysv/linux/llseek.c: Remove file.
* sysdeps/unix/sysv/linux/lseek.c: New file.
* sysdeps/unix/sysv/linux/lseek64.c: Add default Linux implementation.
* sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Remove lseek and
__libc_lseek64 from auto-generation.
* sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/x86_64/x32/lseek64.S: New file.
[1] https://sourceware.org/ml/libc-alpha/2016-08/msg00443.html
[2] https://sourceware.org/ml/libc-alpha/2016-08/msg00646.html
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I've moved the MIPS port from ports to the main sysdeps hierarchy.
Beyond the README update, the move of the files was simply
git mv ports/sysdeps/mips sysdeps/mips
git mv ports/sysdeps/unix/mips sysdeps/unix/mips
git mv ports/sysdeps/unix/sysv/linux/mips sysdeps/unix/sysv/linux/mips
and in addition to the ChangeLog entries here, I put a note at the top
of ports/ChangeLog.mips similar to those in other files.
Tested that disassembly of installed shared libraries for mips is the
same before and after this patch (except for ld.so where paths in
assertions are involved, as for arm).
* sysdeps/mips: Move directory from ports/sysdeps/mips.
* sysdeps/unix/mips: Move directory from ports/sysdeps/unix/mips.
* sysdeps/unix/sysv/linux/mips: Move directory from
ports/sysdeps/unix/sysv/linux/mips.
* README: Update listing for mips-*-linux-gnu and
mips64-*-linux-gnu.
* sysdeps/mips: Move directory to ../sysdeps/mips.
* sysdeps/unix/mips: Move directory to ../sysdeps/unix/mips.
* sysdeps/unix/sysv/linux/mips: Move directory to
../sysdeps/unix/sysv/linux/mips.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-02-20 Roland McGrath <roland@redhat.com>
* sysdeps/mips: Directory removed, saved in ports repository.
* sysdeps/unix/mips: Likewise.
* sysdeps/unix/sysv/linux/mips: Likewise.
* sysdeps/mach/mips: Likewise.
* sysdeps/mach/hurd/mips: Likewise.
* shlib-versions: Remove mips matches, now in ports fragment.
* sysdeps/unix/sysv/linux/kernel-features.h: Likewise.
* configure.in (machine): Likewise.
* configure: Regenerated.
2006-02-15 Thomas Schwinge <tschwinge@gnu.org>
[BZ #2329]
* include/unistd.h (__getresuid, __getresgid, __setresuid)
(__setresgid): Fix argument name order in prototypes.
* posix/unistd.h (getresuid, getresgid, setresuid, setresgid):
Likewise.
* posix/getresuid.c (__getresuid): Fix argument order in definition.
* posix/getresgid.c (__getresgid): Likewise.
* posix/setresuid.c (__setresuid): Likewise.
* posix/setresgid.c (__setresgid): Likewise.
* sysdeps/mach/hurd/getresuid.c (__getresuid): Likewise.
* sysdeps/mach/hurd/getresgid.c (__getresgid): Likewise.
* sysdeps/mach/hurd/setresuid.c (__setresuid): Likewise.
* sysdeps/mach/hurd/setresgid.c (__setresgid): Likewise.
Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
|
| |
|
| |
|
|
sysdeps/mips/mips64/n64/Implies: New file. * sysdeps/mips/mips64/n64/Makefile: New file. * sysdeps/mips/mips64/n64/el/bits/endian.h: New file. * sysdeps/mips/mips64/n32/Implies: New file. * sysdeps/mips/mips64/n32/Makefile: New file. * sysdeps/mips/mips64/n32/el/bits/endian.h: New file. * sysdeps/unix/mips/mips64/n32/sysdep.h: New file. * sysdeps/unix/mips/mips64/n64/sysdep.h: New file. * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file. * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file. * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file. * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file. * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file. * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file. * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file. * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file. * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file. * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file. * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
* sysdeps/mips/mips64/Implies: Move wordsize-64 to...
* sysdeps/mips/mips64/n64/Implies: New file.
* sysdeps/mips/mips64/n64/Makefile: New file.
* sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
* sysdeps/mips/mips64/n32/Implies: New file.
* sysdeps/mips/mips64/n32/Makefile: New file.
* sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
* sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
* sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
* sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
* sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
|