diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.com> | 2017-03-06 15:13:03 +0100 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.com> | 2017-03-09 15:22:06 +0100 |
commit | 60f9423b6b02d79f8fef65552ecd21e0fd097774 (patch) | |
tree | b4bdcf27f2c3b709e1e3afcc09a32b8aec3e9a5d /ChangeLog | |
parent | 06cf371e978cde2df19efa1474791bd2532f529b (diff) | |
download | glibc-60f9423b6b02d79f8fef65552ecd21e0fd097774.tar.gz glibc-60f9423b6b02d79f8fef65552ecd21e0fd097774.tar.xz glibc-60f9423b6b02d79f8fef65552ecd21e0fd097774.zip |
Consolidate Linux send implementation
This patch consolidates the send Linux syscall implementation on sysdeps/unix/sysv/linux/send{to}.c. The changes are: 1. Remove send from auto-generation syscalls.list on the architecture that uses __NR_send. 2. Define __NR_send for architectures that supports it. It was done instead of defining in default kernel-features.h because current Linux practice for new ports are to implement only __NR_sendto [1] and it will require adding new kernel-features for ports that do not require it (aarch64 for instance). 3. Remove __ASSUME_SENDTO_FOR_SEND_SYSCALL and decide to use __NR_sendto for send generation based on __ASSUME_SENDTO_SYSCALL. Checked on i686-linux-gnu, x86_64-linux-gnu, x86_64-linux-gnux32, aarch64-linux-gnu, arm-linux-gnueabihf, and powerpc64le-linux-gnu. * sysdeps/unix/sysv/linux/sysdep.h (HAVE_INTERNAL_SEND_SYMBOL): Define. * sysdeps/unix/sysv/linux/aarch64/sysdep.h (HAVE_INTERNAL_SEND_SYMBOL): Undefine. * sysdeps/unix/sysv/linux/nios2/sysdep.h (HAVE_INTERNAL_SEND_SYMBOL): Likewise. * sysdeps/unix/sysv/linux/tile/sysdep.h (HAVE_INTERNAL_SEND_SYMBOL): Likewise. * sysdeps/unix/sysv/linux/alpha/kernel-features.h (__ASSUME_RECV_SYSCALL): Define. * sysdeps/unix/sysv/linux/arm/kernel-features.h (__ASSUME_RECV_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/hppa/kernel-features.h (__ASSUME_RECV_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/ia64/kernel-features.h (__ASSUME_RECV_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/mips/kernel-features.h (__ASSUME_RECV_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/i386/kernel-features.h (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Remove define. * sysdeps/unix/sysv/linux/m68k/kernel-features.h (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/s390/kernel-features.h (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Likewise. * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove send from auto-generation list. * sysdeps/unix/sysv/linux/arm/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewike. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/send.c: Simplify includes. (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Replace by __ASSUME_SENDTO_SYSCALL. * sysdeps/unix/sysv/linux/x86_64/send.c: Remove file. * sysdeps/unix/sysv/linux/mips/mips64/send.c: Likewise. * sysdeps/unix/sysv/linux/generic/send.c: Likewise.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index 581ad979de..6b5c65c9fb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,43 @@ 2016-03-08 Adhemerval Zanella <adhemerval.zanella@linaro.org> + * sysdeps/unix/sysv/linux/sysdep.h (HAVE_INTERNAL_SEND_SYMBOL): + Define. + * sysdeps/unix/sysv/linux/aarch64/sysdep.h + (HAVE_INTERNAL_SEND_SYMBOL): Undefine. + * sysdeps/unix/sysv/linux/nios2/sysdep.h + (HAVE_INTERNAL_SEND_SYMBOL): Likewise. + * sysdeps/unix/sysv/linux/tile/sysdep.h + (HAVE_INTERNAL_SEND_SYMBOL): Likewise. + * sysdeps/unix/sysv/linux/alpha/kernel-features.h + (__ASSUME_RECV_SYSCALL): Define. + * sysdeps/unix/sysv/linux/arm/kernel-features.h + (__ASSUME_RECV_SYSCALL): Likewise. + * sysdeps/unix/sysv/linux/hppa/kernel-features.h + (__ASSUME_RECV_SYSCALL): Likewise. + * sysdeps/unix/sysv/linux/ia64/kernel-features.h + (__ASSUME_RECV_SYSCALL): Likewise. + * sysdeps/unix/sysv/linux/mips/kernel-features.h + (__ASSUME_RECV_SYSCALL): Likewise. + * sysdeps/unix/sysv/linux/i386/kernel-features.h + (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Remove define. + * sysdeps/unix/sysv/linux/m68k/kernel-features.h + (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Likewise. + * sysdeps/unix/sysv/linux/s390/kernel-features.h + (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Likewise. + * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove send from + auto-generation list. + * sysdeps/unix/sysv/linux/arm/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewike. + * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/send.c: Simplify includes. + (__ASSUME_SENDTO_FOR_SEND_SYSCALL): Replace by + __ASSUME_SENDTO_SYSCALL. + * sysdeps/unix/sysv/linux/x86_64/send.c: Remove file. + * sysdeps/unix/sysv/linux/mips/mips64/send.c: Likewise. + * sysdeps/unix/sysv/linux/generic/send.c: Likewise. + * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove sendto from auto-generation list. * sysdeps/unix/sysv/linux/arm/syscalls.list: Likewise. |