Bug 361354 - ppc64[le]: wire up separate socketcalls system calls
Summary: ppc64[le]: wire up separate socketcalls system calls
Status: RESOLVED FIXED
Alias: None
Product: valgrind
Classification: Developer tools
Component: general (other bugs)
Version First Reported In: 3.11 SVN
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Julian Seward
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-04-03 18:12 UTC by Mark Wielaard
Modified: 2016-04-03 20:34 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Wielaard 2016-04-03 18:12:18 UTC
Newer glibc will use separate socket related syscalls instead of using the multiplexing socketcall systemcall. On Fedora rawhide this causes several tests to fail.

The following call should be wired up:

diff --git a/coregrind/m_syswrap/syswrap-ppc64-linux.c b/coregrind/m_syswrap/sys
index 77668c7..6d5713b 100644
--- a/coregrind/m_syswrap/syswrap-ppc64-linux.c
+++ b/coregrind/m_syswrap/syswrap-ppc64-linux.c
@@ -1151,6 +1151,23 @@ static SyscallTableEntry syscall_table[] = {
    LINX_(__NR_pwritev,           sys_pwritev),          // 321
    LINXY(__NR_rt_tgsigqueueinfo, sys_rt_tgsigqueueinfo),// 322
 
+   LINXY(__NR_socket,            sys_socket),           // 326
+   LINX_(__NR_bind,              sys_bind),             // 327
+   LINX_(__NR_connect,           sys_connect),          // 328
+   LINX_(__NR_listen,            sys_listen),           // 329
+   LINXY(__NR_accept,            sys_accept),           // 330
+   LINXY(__NR_getsockname,       sys_getsockname),      // 331
+   LINXY(__NR_getpeername,       sys_getpeername),      // 332
+   LINXY(__NR_socketpair,        sys_socketpair),       // 333
+   LINX_(__NR_send,              sys_send),             // 334
+   LINX_(__NR_sendto,            sys_sendto),           // 335
+   LINXY(__NR_recv,              sys_recv),             // 336
+   LINXY(__NR_recvfrom,          sys_recvfrom),         // 337
+   LINX_(__NR_shutdown,          sys_shutdown),         // 338
+   LINX_(__NR_setsockopt,        sys_setsockopt),       // 339
+   LINXY(__NR_getsockopt,        sys_getsockopt),       // 340
+   LINX_(__NR_sendmsg,           sys_sendmsg),          // 341
+   LINXY(__NR_recvmsg,           sys_recvmsg),          // 342
    LINXY(__NR_recvmmsg,          sys_recvmmsg),         // 343
    LINXY(__NR_accept4,           sys_accept4),          // 344
 
Currently testing the above patch on a fedora ppc64[le] setup.

Reproducible: Always
Comment 1 Mark Wielaard 2016-04-03 20:34:13 UTC
valgrind svn r15845