Consolidate Linux msgctl implementation
commit356c0aabd0191cdd7287ccf1ec8bbaa4862a0823
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Tue, 25 Oct 2016 22:38:37 +0000 (25 20:38 -0200)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Wed, 28 Dec 2016 22:28:56 +0000 (28 20:28 -0200)
treeff179c3d7a7a1b95ff22ffccf88554ec2137b9df
parent1e5834c38a22bc6bee7bae4347f21baee5196724
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.
13 files changed:
ChangeLog
sysdeps/unix/sysv/linux/alpha/Makefile
sysdeps/unix/sysv/linux/alpha/msgctl.c [deleted file]
sysdeps/unix/sysv/linux/alpha/syscalls.list
sysdeps/unix/sysv/linux/arm/msgctl.c [deleted file]
sysdeps/unix/sysv/linux/generic/syscalls.list
sysdeps/unix/sysv/linux/hppa/syscalls.list
sysdeps/unix/sysv/linux/ia64/syscalls.list
sysdeps/unix/sysv/linux/microblaze/msgctl.c [deleted file]
sysdeps/unix/sysv/linux/mips/mips64/msgctl.c
sysdeps/unix/sysv/linux/msgctl.c
sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
sysdeps/unix/sysv/linux/x86_64/syscalls.list