glibc/sysdeps/unix/sysv/linux/m68k
Adhemerval Zanella 63719cf1e3 Add __ASSUME_DIRECT_SYSVIPC_SYSCALL for Linux
On current minimum supported kernels, the SysV IPC on Linux is provided
by either the ipc syscalls or correspondent wire syscalls.  Also, for
architectures that supports wire syscalls all syscalls are supported
in a set (msgct, msgrcv, msgsnd, msgget, semctl, semget, semop, semtimedop,
shmctl, shmat, shmget, shmdt).

The architectures that only supports ipc syscall are:

  - i386, m68k, microblaze, mips32, powerpc (powerpc32, powerpc64, and
    powerpc64le), s390 (32 and 64 bits), sh, sparc32, and sparc64.

And the architectures that only supports wired syscalls are:

  - aarch64, alpha, hppa, ia64, mips64, mips64n32, nios2, tile
    (tilepro, tilegx, and tilegx64), and x86_64

Also arm is the only one that supports both wire syscalls and the
ipc, although the ipc one is deprecated.

This patch adds a new define, __ASSUME_DIRECT_SYSVIPC_SYSCALL, that wired
syscalls are supported on the system and the general idea is to use
it where possible.

I also checked the syscall table for all architectures on Linux 4.9
and there is no change on described support for Linux 2.6.32/3.2.

	* sysdeps/unix/sysv/linux/kernel-features.h
	(__ASSUME_DIRECT_SYSVIPC_SYSCALL): New define.
	* sysdeps/unix/sysv/linux/i386/kernel-features.h
	(__ASSUME_DIRECT_SYSVIPC_SYSCALL): Undef.
	* sysdeps/unix/sysv/linux/m68k/kernel-features.h
	(__ASSUME_DIRECT_SYSVIPC_SYSCALL): Likewise.
	* sysdeps/unix/sysv/linux/mips/kernel-features.h
	(__ASSUME_DIRECT_SYSVIPC_SYSCALL): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/kernel-features.h
	(__ASSUME_DIRECT_SYSVIPC_SYSCALL): Likewise.
	* sysdeps/unix/sysv/linux/s390/kernel-features.h
	(__ASSUME_DIRECT_SYSVIPC_SYSCALL): Likewise.
	* sysdeps/unix/sysv/linux/sh/kernel-features.h
	(__ASSUME_DIRECT_SYSVIPC_SYSCALL): Likewise.
	* sysdeps/unix/sysv/linux/sparc/kernel-features.h
	(__ASSUME_DIRECT_SYSVIPC_SYSCALL): Likewise.
2016-12-28 20:28:56 -02:00
..
bits Make padding in struct sockaddr_storage explicit [BZ #20111] 2016-05-23 19:43:09 +02:00
coldfire Add roundeven, roundevenf, roundevenl. 2016-12-21 01:48:27 +00:00
m680x0 Add roundeven, roundevenf, roundevenl. 2016-12-21 01:48:27 +00:00
sys Installed-header hygiene (BZ#20366): stack_t. 2016-09-23 08:43:56 -04:00
Implies NPTL is no longer an add-on! 2014-07-07 09:29:06 -07:00
Makefile Consolidate Linux setrlimit and getrlimit implementation 2016-11-17 15:54:22 -02:00
Versions Revert {send,sendm,recv,recvm}msg conformance changes 2016-06-10 11:58:16 -03:00
____longjmp_chk.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
alphasort64.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
arch-fork.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
brk.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
c++-types.data m68k: Consolidate nptl/ subdirectories under linux/... 2014-06-23 09:24:18 -07:00
clone.S Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
configure Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
configure.ac Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
dl-librecon.h Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
dl-static.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
fcntl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
fxstat.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
fxstatat.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
getdents64.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
getmsg.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
getpagesize.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
getsysstats.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
glob64.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
init-first.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
kernel-features.h Add __ASSUME_DIRECT_SYSVIPC_SYSCALL for Linux 2016-12-28 20:28:56 -02:00
ldconfig.h Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
ldsodefs.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
libc-m68k-vdso.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
localplt.data ld.so: Remove __libc_memalign 2016-11-30 16:23:58 +01:00
lockf64.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
lxstat.c Whitespace fixes 2014-02-10 20:24:03 +01:00
m68k-helpers.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
m68k-vdso.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
m68k-vdso.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
mmap.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
mmap64.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
mremap.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
pt-vfork.c m68k: Consolidate NPTL/non versions of vfork 2014-06-14 21:37:34 +02:00
putmsg.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
readdir64.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
readdir64_r.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
register-dump.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
scandir64.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
semtimedop.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
setegid.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
seteuid.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
setgid.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
setgroups.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
setregid.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
setresgid.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
setresuid.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
setreuid.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
setuid.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
sigcontextinfo.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
syscall.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
syscalls.list Fix linux personality syscall wrapper 2015-12-31 00:17:48 +00:00
sysdep-cancel.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
sysdep.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
sysdep.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
versionsort64.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
vfork.S Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
xstat.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00