diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2016-10-25 20:38:37 -0200 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2016-12-28 20:28:56 -0200 |
commit | 356c0aabd0191cdd7287ccf1ec8bbaa4862a0823 (patch) | |
tree | ff179c3d7a7a1b95ff22ffccf88554ec2137b9df /sysdeps/unix/sysv/linux/generic | |
parent | 1e5834c38a22bc6bee7bae4347f21baee5196724 (diff) | |
download | glibc-356c0aabd0191cdd7287ccf1ec8bbaa4862a0823.tar glibc-356c0aabd0191cdd7287ccf1ec8bbaa4862a0823.tar.gz glibc-356c0aabd0191cdd7287ccf1ec8bbaa4862a0823.tar.bz2 glibc-356c0aabd0191cdd7287ccf1ec8bbaa4862a0823.zip |
Consolidate Linux msgctl implementation
This patch consolidates the msgctl Linux implementation in only
one default file, sysdeps/unix/sysv/linux/msgctl.c. If tries to use
the direct syscall if it is supported, otherwise will use the old ipc
multiplex mechanism.
The patch also simplify header inclusion and reorganize internal
compat symbol to be built only if old ipc is defined.
Checked on x86_64, i686, powerpc64le, aarch64, and armhf.
* sysdeps/unix/sysv/linux/alpha/Makefile (sysdeps_routines): Remove
oldmsgctl.
* sysdeps/unix/sysv/linux/alpha/msgctl.c: Remove file.
* sysdeps/unix/sysv/linux/arm/msgctl.c: Likewise.
* sysdeps/unix/sysv/linux/microblaze/msgctl.c: Likewise.
* sysdeps/unix/sysv/linux/alpha/syscalls.list (oldmsgctl): Remove.
* sysdeps/unix/sysv/linux/generic/syscalls.list (msgctl): Likewise.
* sysdeps/unix/sysv/linux/hppa/syscalls.list (msgctl): Likewise.
* sysdeps/unix/sysv/linux/ia64/syscalls.list (msgctl): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgctl):
Likewise.
* sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgctl): Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/msgctl.c: Use default
implementation.
* sysdeps/unix/sysv/linux/msgctl.c (__new_msgctl): Use msgctl syscall
if defined.
Diffstat (limited to 'sysdeps/unix/sysv/linux/generic')
-rw-r--r-- | sysdeps/unix/sysv/linux/generic/syscalls.list | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/generic/syscalls.list b/sysdeps/unix/sysv/linux/generic/syscalls.list index 5993ab4a47..dea452b606 100644 --- a/sysdeps/unix/sysv/linux/generic/syscalls.list +++ b/sysdeps/unix/sysv/linux/generic/syscalls.list @@ -2,7 +2,6 @@ # SysV APIs msgget - msgget i:ii __msgget msgget -msgctl - msgctl i:iip __msgctl msgctl msgrcv - msgrcv Ci:ibnii __msgrcv msgrcv msgsnd - msgsnd Ci:ibni __msgsnd msgsnd semget - semget i:iii __semget semget |