|
From: <sv...@va...> - 2015-05-30 08:59:55
|
Author: rhyskidd
Date: Sat May 30 09:59:46 2015
New Revision: 15297
Log:
Fix unhandled syscall: mach:41 (_kernelrpc_mach_port_guard_trap)
bz#344337
Before:
== 591 tests, 220 stderr failures, 14 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures ==
After:
== 591 tests, 220 stderr failures, 14 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures ==
Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-darwin.c
trunk/include/vki/vki-scnums-darwin.h
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Sat May 30 09:59:46 2015
@@ -183,6 +183,7 @@
344307 2 unhandled syscalls on aarch64/arm64: umount2(39), mount (40)
344314 callgrind_annotate ... warnings about commands containing newlines
344318 socketcall should wrap recvmmsg and sendmmsg
+344337 Fix unhandled syscall: mach:41 (_kernelrpc_mach_port_guard_trap)
344499 Fix compilation for Linux kernel >= 4. With this, also require
a Linux kernel >= 2.6 as 2.4 is mostly untested and might trigger
obvious and non-obvious issues
Modified: trunk/coregrind/m_syswrap/syswrap-darwin.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-darwin.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-darwin.c Sat May 30 09:59:46 2015
@@ -9986,17 +9986,27 @@
MACX_(__NR_semaphore_timedwait_signal_trap, semaphore_timedwait_signal),
_____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(40)), // -40
-#if defined(VGA_x86)
-// _____(__NR_init_process),
- _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(42)),
-// _____(__NR_map_fd),
-#else
# if DARWIN_VERS >= DARWIN_10_9
MACX_(__NR_kernelrpc_mach_port_guard_trap, kernelrpc_mach_port_guard_trap),
MACX_(__NR_kernelrpc_mach_port_unguard_trap, kernelrpc_mach_port_unguard_trap),
+# else
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(41)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(42)),
+# endif
+
+# if DARWIN_VERS >= DARWIN_10_10
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(43)),
+# else
+# if DARWIN_VERS == DARWIN_10_9
+// _____(__NR_map_fd),
+# else
+# if defined(VGA_x86)
+// _____(__NR_map_fd),
+# else
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(43)),
+# endif
+# endif
# endif
- _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(43)),
-#endif
// _____(__NR_task_name_for_pid),
MACXY(__NR_task_for_pid, task_for_pid),
Modified: trunk/include/vki/vki-scnums-darwin.h
==============================================================================
--- trunk/include/vki/vki-scnums-darwin.h (original)
+++ trunk/include/vki/vki-scnums-darwin.h Sat May 30 09:59:46 2015
@@ -175,14 +175,15 @@
#define __NR_semaphore_timedwait_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(38)
#define __NR_semaphore_timedwait_signal_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(39)
-#if defined(VGA_x86)
-#define __NR_init_process VG_DARWIN_SYSCALL_CONSTRUCT_MACH(41)
-#define __NR_map_fd VG_DARWIN_SYSCALL_CONSTRUCT_MACH(43)
-#else
+#if DARWIN_VERS >= DARWIN_10_9
#define __NR_kernelrpc_mach_port_guard_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(41)
#define __NR_kernelrpc_mach_port_unguard_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(42)
#endif
+#if defined(VGA_x86) || DARWIN_VERS == DARWIN_10_9
+#define __NR_map_fd VG_DARWIN_SYSCALL_CONSTRUCT_MACH(43)
+#endif
+
#define __NR_task_name_for_pid VG_DARWIN_SYSCALL_CONSTRUCT_MACH(44)
#define __NR_task_for_pid VG_DARWIN_SYSCALL_CONSTRUCT_MACH(45)
#define __NR_pid_for_task VG_DARWIN_SYSCALL_CONSTRUCT_MACH(46)
|