diff options
author | Stefan Liebler <stli@linux.vnet.ibm.com> | 2015-11-09 16:14:49 +0100 |
---|---|---|
committer | Andreas Krebbel <krebbel@linux.vnet.ibm.com> | 2015-11-09 16:14:49 +0100 |
commit | 016495b818cb61df7d0d10e6db54074271b3e3a5 (patch) | |
tree | f03b894ace447f55bd43c2719a2d3bf9b31b88e3 /ChangeLog | |
parent | 2eecc8afd02d8c65cf098cbae4de87f332dc21bd (diff) | |
download | glibc-016495b818cb61df7d0d10e6db54074271b3e3a5.tar.gz glibc-016495b818cb61df7d0d10e6db54074271b3e3a5.tar.xz glibc-016495b818cb61df7d0d10e6db54074271b3e3a5.zip |
S390: Call direct system calls for socket operations.
this patch calls direct system calls for socket operations in the same way as power does. The system calls were introduced in kernel commit https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=977108f89c989b1eeb5c8d938e1e71913391eb5f. There are no direct recv, send, accept syscalls available on s390. Thus recvfrom, sendto, accept4 are called instead of the socketcall by defining __ASSUME_*_FOR_*_SYSCALL macros. See recv.c, send.c, accept.c in sysdeps/unix/sysv/linux/ folder. The socketcalls in syscalls.list for s390-64 are removed. They were never used on s390x. ChangeLog: * sysdeps/unix/sysv/linux/s390/kernel-features.h: (__ASSUME_*_SYSCALL) Define new macros. * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Remove socketcall syscalls. * sysdeps/unix/sysv/linux/accept.c (__libc_accept): Use accept4 if defined __ASSUME_ACCEPT4_FOR_ACCEPT_SYSCALL. * sysdeps/unix/sysv/linux/recv.c (__libc_recv): Use recvfrom if defined __ASSUME_RECVFROM_FOR_RECV_SYSCALL. * sysdeps/unix/sysv/linux/send.c (__libc_send): Use sendto if defined __ASSUME_SENDTO_FOR_SEND_SYSCALL.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index 3acc71c932..f8cd164779 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2015-11-09 Stefan Liebler <stli@linux.vnet.ibm.com> + + * sysdeps/unix/sysv/linux/s390/kernel-features.h: + (__ASSUME_*_SYSCALL) Define new macros. + * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: + Remove socketcall syscalls. + * sysdeps/unix/sysv/linux/accept.c (__libc_accept): + Use accept4 if defined __ASSUME_ACCEPT4_FOR_ACCEPT_SYSCALL. + * sysdeps/unix/sysv/linux/recv.c (__libc_recv): + Use recvfrom if defined __ASSUME_RECVFROM_FOR_RECV_SYSCALL. + * sysdeps/unix/sysv/linux/send.c (__libc_send): + Use sendto if defined __ASSUME_SENDTO_FOR_SEND_SYSCALL. + 2015-11-09 Florian Weimer <fweimer@redhat.com> [BZ #12926] |