Bug 359703 s390: wire up separate socketcalls system calls

The linux 4.3 s390 kernel has separate system calls that were originally
hidden behind the socketcall multiplexer system call. Newer glibc versions
will use these direct system calls instead of socketcall when available.
Causing several regtest failures.

This fix simply wires up the split out system calls directly to the
existing syswrap handlers for s390.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15802
This commit is contained in:
Mark Wielaard 2016-02-23 15:19:49 +00:00
parent da8925d486
commit 3c4de2eb09
2 changed files with 39 additions and 2 deletions

View File

@ -1051,7 +1051,25 @@ static SyscallTableEntry syscall_table[] = {
// ?????(__NR_seccomp, ), // 348
LINXY(__NR_getrandom, sys_getrandom), // 349
LINXY(__NR_memfd_create, sys_memfd_create) // 350
LINXY(__NR_memfd_create, sys_memfd_create), // 350
LINXY(__NR_recvmmsg, sys_recvmmsg), // 357
LINXY(__NR_sendmmsg, sys_sendmmsg), // 358
LINXY(__NR_socket, sys_socket), // 359
LINXY(__NR_socketpair, sys_socketpair), // 360
LINX_(__NR_bind, sys_bind), // 361
LINX_(__NR_connect, sys_connect), // 362
LINX_(__NR_listen, sys_listen), // 363
LINXY(__NR_accept4, sys_accept4), // 364
LINXY(__NR_getsockopt, sys_getsockopt), // 365
LINX_(__NR_setsockopt, sys_setsockopt), // 366
LINXY(__NR_getsockname, sys_getsockname), // 367
LINXY(__NR_getpeername, sys_getpeername), // 368
LINX_(__NR_sendto, sys_sendto), // 369
LINX_(__NR_sendmsg, sys_sendmsg), // 270
LINXY(__NR_recvfrom, sys_recvfrom), // 371
LINXY(__NR_recvmsg, sys_recvmsg), // 372
LINX_(__NR_shutdown, sys_shutdown) // 373
};
SyscallTableEntry* ML_(get_linux_syscall_entry) ( UInt sysno )

View File

@ -316,7 +316,26 @@
#define __NR_seccomp 348
#define __NR_getrandom 349
#define __NR_memfd_create 350
#define NR_syscalls 351
#define __NR_recvmmsg 357
#define __NR_sendmmsg 358
#define __NR_socket 359
#define __NR_socketpair 360
#define __NR_bind 361
#define __NR_connect 362
#define __NR_listen 363
#define __NR_accept4 364
#define __NR_getsockopt 365
#define __NR_setsockopt 366
#define __NR_getsockname 367
#define __NR_getpeername 368
#define __NR_sendto 369
#define __NR_sendmsg 370
#define __NR_recvfrom 371
#define __NR_recvmsg 372
#define __NR_shutdown 373
#define NR_syscalls 374
/*
* There are some system calls that are not present on 64 bit, some