From: Rhys Kidd Date: Sun, 10 Sep 2017 15:34:32 +0000 (-0400) Subject: Preliminary support for Darwin 17.x (macOS 10.13) X-Git-Tag: VALGRIND_3_14_0~241 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1ce04c35c2ebbc8ea3c2b38ba69daa9dd40cde35;p=thirdparty%2Fvalgrind.git Preliminary support for Darwin 17.x (macOS 10.13) --- diff --git a/NEWS b/NEWS index 4d6d84026a..2dfcf32602 100644 --- a/NEWS +++ b/NEWS @@ -8,13 +8,15 @@ bug fixes. This release supports X86/Linux, AMD64/Linux, ARM32/Linux, ARM64/Linux, PPC32/Linux, PPC64BE/Linux, PPC64LE/Linux, S390X/Linux, MIPS32/Linux, MIPS64/Linux, ARM/Android, ARM64/Android, MIPS32/Android, X86/Android, -X86/Solaris, AMD64/Solaris and AMD64/MacOSX 10.12. +X86/Solaris, AMD64/Solaris and AMD64/MacOSX 10.12. There is also preliminary +support for X86/macOS 10.13, AMD64/macOS 10.13. * ==================== CORE CHANGES =================== * ================== PLATFORM CHANGES ================= +* Preliminary support for macOS 10.13 has been added. * ==================== TOOL CHANGES ==================== diff --git a/README b/README index 6959707d3a..6f333d370f 100644 --- a/README +++ b/README @@ -37,8 +37,8 @@ platforms: - PPC32/Linux - PPC64/Linux - ARM/Linux -- x86/MacOSX -- AMD64/MacOSX +- x86/macOS +- AMD64/macOS - S390X/Linux - MIPS32/Linux - MIPS64/Linux @@ -46,7 +46,7 @@ platforms: - AMD64/Solaris Note that AMD64 is just another name for x86_64, and Valgrind runs fine -on Intel processors. Also note that the core of MacOSX is called +on Intel processors. Also note that the core of macOS is called "Darwin" and this name is used sometimes. Valgrind is licensed under the GNU General Public License, version 2. diff --git a/configure.ac b/configure.ac index fde97ae769..483d9bd880 100644 --- a/configure.ac +++ b/configure.ac @@ -349,6 +349,7 @@ case "${host_os}" in AC_DEFINE([DARWIN_10_10], 101000, [DARWIN_VERS value for Mac OS X 10.10]) AC_DEFINE([DARWIN_10_11], 101100, [DARWIN_VERS value for Mac OS X 10.11]) AC_DEFINE([DARWIN_10_12], 101200, [DARWIN_VERS value for macOS 10.12]) + AC_DEFINE([DARWIN_10_13], 101300, [DARWIN_VERS value for macOS 10.13]) AC_MSG_CHECKING([for the kernel version]) kernel=`uname -r` @@ -418,9 +419,15 @@ case "${host_os}" in DEFAULT_SUPP="darwin16.supp ${DEFAULT_SUPP}" DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}" ;; + 17.*) + AC_MSG_RESULT([Darwin 17.x (${kernel}) / macOS 10.13 High Sierra]) + AC_DEFINE([DARWIN_VERS], DARWIN_10_13, [Darwin / Mac OS X version]) + DEFAULT_SUPP="darwin17.supp ${DEFAULT_SUPP}" + DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}" + ;; *) AC_MSG_RESULT([unsupported (${kernel})]) - AC_MSG_ERROR([Valgrind works on Darwin 10.x, 11.x, 12.x, 13.x, 14.x, 15.x and 16.x (Mac OS X 10.6/7/8/9/10/11 and macOS 10.12)]) + AC_MSG_ERROR([Valgrind works on Darwin 10.x, 11.x, 12.x, 13.x, 14.x, 15.x, 16.x and 17.x (Mac OS X 10.6/7/8/9/10/11 and macOS 10.12/13)]) ;; esac ;; diff --git a/coregrind/fixup_macho_loadcmds.c b/coregrind/fixup_macho_loadcmds.c index 516b7bad6f..cdb3622a50 100644 --- a/coregrind/fixup_macho_loadcmds.c +++ b/coregrind/fixup_macho_loadcmds.c @@ -122,7 +122,8 @@ #if DARWIN_VERS != DARWIN_10_5 && DARWIN_VERS != DARWIN_10_6 \ && DARWIN_VERS != DARWIN_10_7 && DARWIN_VERS != DARWIN_10_8 \ && DARWIN_VERS != DARWIN_10_9 && DARWIN_VERS != DARWIN_10_10 \ - && DARWIN_VERS != DARWIN_10_11 && DARWIN_VERS != DARWIN_10_12 + && DARWIN_VERS != DARWIN_10_11 && DARWIN_VERS != DARWIN_10_12 \ + && DARWIN_VERS != DARWIN_10_13 # error "Unknown DARWIN_VERS value. This file only compiles on Darwin." #endif diff --git a/coregrind/m_syswrap/priv_syswrap-darwin.h b/coregrind/m_syswrap/priv_syswrap-darwin.h index bdefd61523..29e491dc75 100644 --- a/coregrind/m_syswrap/priv_syswrap-darwin.h +++ b/coregrind/m_syswrap/priv_syswrap-darwin.h @@ -248,7 +248,9 @@ DECL_TEMPLATE(darwin, seteuid); // 183 DECL_TEMPLATE(darwin, sigreturn); // 184 DECL_TEMPLATE(darwin, FAKE_SIGRETURN); // NYI chud 185 -// 186 +#if DARWIN_VERS >= DARWIN_10_13 +// NYI thread_selfcounts // 186 +#endif /* DARWIN_VERS >= DARWIN_10_13 */ // 187 // GEN stat 188 // GEN fstat 189 @@ -470,7 +472,9 @@ DECL_TEMPLATE(darwin, __thread_selfid); // 372 #if DARWIN_VERS >= DARWIN_10_11 // NYI kevent_qos // 374 #endif /* DARWIN_VERS >= DARWIN_10_11 */ -// 375 +#if DARWIN_VERS >= DARWIN_10_13 +// NYI kevent_id // 375 +#endif /* DARWIN_VERS >= DARWIN_10_13 */ // 376 // 377 // 378 @@ -634,6 +638,16 @@ DECL_TEMPLATE(darwin, ulock_wake); // 516 // NYI terminate_with_payload // 520 // NYI abort_with_payload // 521 #endif /* DARWIN_VERS >= DARWIN_10_12 */ +#if DARWIN_VERS >= DARWIN_10_13 +// NYI necp_session_open // 522 +// NYI necp_session_action // 523 +// NYI setattrlistat // 524 +// NYI net_qos_guideline // 525 +// NYI fmount // 526 +// NYI ntp_adjtime // 527 +// NYI ntp_gettime // 528 +// NYI os_fault_with_payload // 529 +#endif /* DARWIN_VERS >= DARWIN_10_13 */ // Mach message helpers DECL_TEMPLATE(darwin, mach_port_set_context); @@ -750,6 +764,10 @@ DECL_TEMPLATE(darwin, semaphore_timedwait_signal); DECL_TEMPLATE(darwin, task_for_pid); DECL_TEMPLATE(darwin, pid_for_task); +#if DARWIN_VERS >= DARWIN_10_13 +// NYI thread_get_special_reply_port // 50 +#endif /* DARWIN_VERS >= DARWIN_10_13 */ + #if DARWIN_VERS >= DARWIN_10_12 DECL_TEMPLATE(darwin, host_create_mach_voucher_trap); DECL_TEMPLATE(darwin, task_register_dyld_image_infos); diff --git a/coregrind/m_syswrap/syswrap-amd64-darwin.c b/coregrind/m_syswrap/syswrap-amd64-darwin.c index c827bab4c5..f509329779 100644 --- a/coregrind/m_syswrap/syswrap-amd64-darwin.c +++ b/coregrind/m_syswrap/syswrap-amd64-darwin.c @@ -482,7 +482,8 @@ void wqthread_hijack(Addr self, Addr kport, Addr stackaddr, Addr workitem, # elif DARWIN_VERS == DARWIN_10_9 \ || DARWIN_VERS == DARWIN_10_10 \ || DARWIN_VERS == DARWIN_10_11 \ - || DARWIN_VERS == DARWIN_10_12 + || DARWIN_VERS == DARWIN_10_12 \ + || DARWIN_VERS == DARWIN_10_13 UWord magic_delta = 0xE0; # else # error "magic_delta: to be computed on new OS version" diff --git a/coregrind/m_syswrap/syswrap-darwin.c b/coregrind/m_syswrap/syswrap-darwin.c index e8097e3ece..fe732b26cc 100644 --- a/coregrind/m_syswrap/syswrap-darwin.c +++ b/coregrind/m_syswrap/syswrap-darwin.c @@ -10575,6 +10575,18 @@ const SyscallTableEntry ML_(syscall_table)[] = { // _____(__NR_terminate_with_payload), // 520 // _____(__NR_abort_with_payload), // 521 #endif +#if DARWIN_VERS >= DARWIN_10_13 +// _____(__NR_thread_selfcounts), // 186 +// _____(__NR_kevent_id, // 375 +// _____(__NR_necp_session_open), // 522 +// _____(__NR_necp_session_action), // 523 +// _____(__NR_setattrlistat), // 524 +// _____(__NR_net_qos_guideline), // 525 +// _____(__NR_fmount), // 526 +// _____(__NR_ntp_adjtime), // 527 +// _____(__NR_ntp_gettime), // 528 +// _____(__NR_os_fault_with_payload), // 529 +#endif // _____(__NR_MAXSYSCALL) MACX_(__NR_DARWIN_FAKE_SIGRETURN, FAKE_SIGRETURN) }; @@ -10698,17 +10710,23 @@ const SyscallTableEntry ML_(mach_trap_table)[] = { #if defined(VGA_x86) // _____(__NR_macx_swapon), // _____(__NR_macx_swapoff), +#else + _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(48)), + _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(49)), +#endif +#if DARWIN_VERS >= DARWIN_10_13 +// _____(__NR_thread_get_special_reply_port, // 50 +#else _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(50)), +#endif /* DARWIN_VERS >= DARWIN_10_13 */ +#if defined(VGA_x86) // _____(__NR_macx_triggers), // _____(__NR_macx_backing_store_suspend), // _____(__NR_macx_backing_store_recovery), #else - _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(48)), - _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(49)), - _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(50)), _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(51)), _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(52)), - _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(53)), + _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(53)), #endif _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(54)), _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(55)), diff --git a/coregrind/m_syswrap/syswrap-x86-darwin.c b/coregrind/m_syswrap/syswrap-x86-darwin.c index dac5c7da32..a5d9e97674 100644 --- a/coregrind/m_syswrap/syswrap-x86-darwin.c +++ b/coregrind/m_syswrap/syswrap-x86-darwin.c @@ -430,7 +430,8 @@ void wqthread_hijack(Addr self, Addr kport, Addr stackaddr, Addr workitem, # elif DARWIN_VERS == DARWIN_10_9 \ || DARWIN_VERS == DARWIN_10_10 \ || DARWIN_VERS == DARWIN_10_11 \ - || DARWIN_VERS == DARWIN_10_12 + || DARWIN_VERS == DARWIN_10_12 \ + || DARWIN_VERS == DARWIN_10_13 UWord magic_delta = 0xB0; # else # error "magic_delta: to be computed on new OS version" diff --git a/darwin17.supp b/darwin17.supp new file mode 100644 index 0000000000..78f33477ca --- /dev/null +++ b/darwin17.supp @@ -0,0 +1,768 @@ + +# Suppressions for Darwin 17.x / macOS 10.13 High Sierra + +############################################ +## Leaks. For other stuff see below. + +{ + OSX1013:1-Leak + Memcheck:Leak + match-leak-kinds: possible + fun:malloc_zone_?alloc + ... + fun:_read_images +} + +{ + OSX1013:2-Leak + Memcheck:Leak + match-leak-kinds: definite + fun:malloc_zone_?alloc + ... + fun:_read_images +} + +{ + OSX1013:3-Leak + Memcheck:Leak + match-leak-kinds: definite + fun:malloc_zone_?alloc + fun:recursive_mutex_init + ... + fun:_os_object_init + fun:libdispatch_init + fun:libSystem_initializer + ... +} + +{ + OSX1013:4-Leak + Memcheck:Leak + fun:malloc_zone_?alloc + ... + fun:dyld_register_image_state_change_handler + ... +} + +{ + OSX1013:5-Leak + Memcheck:Leak + match-leak-kinds: reachable + fun:?alloc + ... + fun:dyld_register_image_state_change_handler + ... +} + +{ + OSX1013:6-Leak + Memcheck:Leak + match-leak-kinds: reachable + fun:malloc_zone_?alloc + ... + fun:map_images_nolock + fun:map_2_images + ... +} + +{ + OSX1013:7-Leak + Memcheck:Leak + match-leak-kinds: possible + fun:malloc_zone_?alloc + ... + fun:map_images_nolock + fun:map_2_images + ... +} + +{ + OSX1013:8-Leak + Memcheck:Leak + match-leak-kinds: definite + fun:?alloc + ... + fun:libSystem_initializer + ... +} + +{ + OSX1013:9-Leak + Memcheck:Leak + match-leak-kinds: reachable + fun:malloc_zone_?alloc + ... + fun:libSystem_initializer + ... +} + +{ + OSX1013:10-Leak + Memcheck:Leak + match-leak-kinds: reachable + fun:?alloc + ... + fun:libSystem_initializer + ... +} + +#{ +# OSX1013:11-Leak +# Memcheck:Leak +# match-leak-kinds: definite +# fun:malloc +# fun:currentlocale +#} +# +#{ +# OSX1013:12-Leak +# Memcheck:Leak +# match-leak-kinds: possible +# fun:malloc +# fun:tzsetwall_basic +# fun:_st_tzset_basic +#} + +{ + OSX1013:13-Leak + Memcheck:Leak + match-leak-kinds: reachable + fun:malloc_zone_memalign + ... + fun:_ZN4dyld24initializeMainExecutableEv + ... +} + +{ + OSX1013:14-Leak + Memcheck:Leak + match-leak-kinds: reachable + fun:?alloc + ... + fun:libSystem_atfork_child + ... +} + +{ + OSX1013:15-Leak + Memcheck:Leak + match-leak-kinds: reachable + fun:malloc + fun:__smakebuf + ... + fun:printf + ... +} + +{ + OSX1013:16-Leak + Memcheck:Leak + match-leak-kinds: possible + fun:?alloc + ... + fun:_read_images +} + +{ + OSX1013:17-Leak + Memcheck:Leak + match-leak-kinds: reachable + fun:?alloc + ... + fun:_read_images +} + +{ + OSX1013:18-Leak + Memcheck:Leak + match-leak-kinds: reachable + fun:malloc_zone_?alloc + ... + fun:_read_images +} + +{ + OSX1013:19-Leak + Memcheck:Leak + match-leak-kinds: possible + fun:malloc_zone_?alloc + ... + fun:*NX*Map* + fun:*NX*Map* +} + +{ + OSX1013:20-Leak + Memcheck:Leak + match-leak-kinds: indirect + fun:?alloc + ... + fun:libSystem_initializer + ... +} + +{ + OSX1013:21-Leak + Memcheck:Leak + match-leak-kinds: definite + fun:malloc_zone_memalign + ... + fun:_ZN4dyld24initializeMainExecutableEv + ... +} + + +############################################ +## Non-leak errors + +##{ +## OSX1013:CoreFoundation-1 +## Memcheck:Cond +## obj:*CoreFoundation.framework*CoreFoundation* +## obj:*CoreFoundation.framework*CoreFoundation* +## obj:*CoreFoundation.framework*CoreFoundation* +##} + +{ + OSX1013:CoreFoundation-2 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*libdispatch.dylib* + obj:*libdispatch.dylib* +} + +{ + OSX1013:CoreFoundation-3 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*CoreFoundation.framework*CoreFoundation* + obj:*Foundation.framework*Foundation* +} + +{ + OSX1013:CoreFoundation-4 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*CoreFoundation.framework*CoreFoundation* + obj:*SystemConfiguration.framework*SystemConfiguration* +} + +{ + OSX1013:CoreFoundation-5 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*CoreFoundation.framework*CoreFoundation* + obj:*HIServices.framework*HIServices* +} + +{ + OSX1013:CoreFoundation-6 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*SystemConfiguration.framework*SystemConfiguration* + obj:*SystemConfiguration.framework*SystemConfiguration* +} + +{ + OSX1013:CoreFoundation-7 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*SystemConfiguration.framework*SystemConfiguration* + obj:*CoreFoundation.framework*CoreFoundation* +} + +{ + OSX1013:CoreFoundation-8 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*IOKit.framework*IOKit* +} + +{ + OSX1013:CoreFoundation-9 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*Foundation.framework*Foundation* + obj:*AppKit.framework*AppKit* +} + +{ + OSX1013:CoreFoundation-10 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*HIToolbox.framework*HIToolbox* + obj:*HIToolbox.framework*HIToolbox* +} + +{ + OSX1013:CoreFoundation-11 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*AE.framework*AE* + obj:*AE.framework*AE* +} + +{ + OSX1013:CoreFoundation-12 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*CoreFoundation.framework*CoreFoundation* + obj:*HIToolbox.framework*HIToolbox* +} + +{ + OSX1013:CoreFoundation-13 + Memcheck:Cond + obj:*CoreFoundation.framework*CoreFoundation* + obj:*CoreFoundation.framework*CoreFoundation* + obj:*AE.framework*AE* +} + +{ + OSX1013:AppKit-1 + Memcheck:Cond + obj:*AppKit.framework*AppKit* + obj:*AppKit.framework*AppKit* + obj:*AppKit.framework*AppKit* +} + +{ + OSX1013:AppKit-2 + Memcheck:Cond + obj:*AppKit.framework*AppKit* + obj:*AppKit.framework*AppKit* + obj:*libdispatch.dylib* +} + +#{ +# OSX1013:AppKit-3 +# Memcheck:Cond +# obj:*AppKit.framework*AppKit* +# obj:*libdispatch.dylib* +# obj:*libdispatch.dylib* +#} + +##{ +## OSX1013:AppKit-4 +## Memcheck:Cond +## obj:*AppKit.framework*AppKit* +## obj:*AppKit.framework*AppKit* +## obj:*CoreFoundation.framework*CoreFoundation* +##} + +{ + OSX1013:AppKit-5 + Memcheck:Cond + obj:*AppKit.framework*AppKit* + obj:*AppKit.framework*AppKit* + obj:*Foundation.framework*Foundation* +} + +{ + OSX1013:AppKit-6 + Memcheck:Cond + obj:*AppKit.framework*AppKit* + obj:*Foundation.framework*Foundation* + obj:*AppKit.framework*AppKit* +} + +{ + OSX1013:AppKit-7 + Memcheck:Cond + obj:*AppKit.framework*AppKit* + obj:*libdispatch.dylib* + obj:*libdispatch.dylib* +} + +{ + OSX1013:AppKit-8 + Memcheck:Cond + obj:*AppKit.framework*AppKit* + obj:*Foundation.framework*Foundation* + obj:*Foundation.framework*Foundation* +} + +{ + OSX1013:ColorSync-1 + Memcheck:Cond + obj:*ColorSync.framework*ColorSync* + obj:*ColorSync.framework*ColorSync* + obj:*ColorSync.framework*ColorSync* +} + +#{ +# OSX1013:ColorSync-2 +# Memcheck:Value8 +# obj:*ColorSync.framework*ColorSync* +# obj:*ColorSync.framework*ColorSync* +# obj:*ColorSync.framework*ColorSync* +#} + +{ + OSX1013:CoreGraphics-1 + Memcheck:Cond + obj:*CoreGraphics.framework*CoreGraphics* + obj:*CoreGraphics.framework*CoreGraphics* +} + +#{ +# OSX1013:CoreGraphics-2 +# Memcheck:Value8 +# obj:*CoreGraphics.framework*CoreGraphics* +# obj:*CoreGraphics.framework*CoreGraphics* +# obj:*CoreGraphics.framework*CoreGraphics* +#} + +{ + OSX1013:CoreGraphics-3 + Memcheck:Cond + obj:*CoreGraphics.framework*CoreGraphics* + obj:*CoreGraphics.framework*libRIP* + obj:*CoreGraphics.framework*libRIP* +} + +#{ +# OSX1013:CoreGraphics-4 +# Memcheck:Cond +# obj:*CoreGraphics.framework*CoreGraphics* +# obj:*CoreGraphics.framework*CoreGraphics* +# obj:*CoreGraphics.framework*libRIP* +#} + +{ + OSX1013:CoreGraphics-5 + Memcheck:Cond + obj:*CoreGraphics.framework*CoreGraphics* + obj:*libdispatch.dylib* + obj:*libdispatch.dylib* +} + +#{ +# OSX1013:CoreGraphics-6 +# Memcheck:Cond +# obj:*CoreGraphics.framework*CoreGraphics* +# obj:*CoreGraphics.framework*CoreGraphics* +# obj:*HIToolbox.framework*HIToolbox* +#} + +{ + OSX1013:HIServices-1 + Memcheck:Cond + obj:*HIServices.framework*HIServices* + obj:*HIToolbox.framework*HIToolbox* + obj:*HIToolbox.framework*HIToolbox* +} + +{ + OSX1013:LaunchServices-1 + Memcheck:Cond + obj:*LaunchServices.framework*LaunchServices* + obj:*AppKit.framework*AppKit* + obj:*AppKit.framework*AppKit* +} + +{ + OSX1013:LaunchServices-2 + Memcheck:Cond + obj:*LaunchServices.framework*LaunchServices* + obj:*libdispatch.dylib* + obj:*libdispatch.dylib* +} + +{ + OSX1013:QuartzCore-1 + Memcheck:Cond + obj:*QuartzCore.framework*QuartzCore + obj:*QuartzCore.framework*QuartzCore + obj:*QuartzCore.framework*QuartzCore +} + +#{ +# OSX1013:vImage-1 +# Memcheck:Cond +# obj:*vImage.framework*vImage* +# obj:*vImage.framework*vImage* +# obj:*CoreGraphics.framework*CoreGraphics* +#} + +{ + OSX1013:zlib-C + Memcheck:Cond + obj:/usr/lib/libz.*dylib + obj:/usr/lib/libz.*dylib +} + +{ + OSX1013:zlib-8 + Memcheck:Value8 + obj:/usr/lib/libz.*dylib + obj:/usr/lib/libz.*dylib +} + +{ + OSX1013:32bit:_libxpc_initializer + Memcheck:Cond + obj:/usr/lib/system/libsystem_c.dylib + obj:/usr/lib/system/libsystem_c.dylib + fun:_libxpc_initializer + obj:/usr/lib/libSystem.B.dylib + fun:*ImageLoaderMachO*doModInitFunctions* +} + +{ + OSX1013:dyld-1 + Memcheck:Cond + fun:*ImageLoader*weakBind* + fun:*ImageLoader*link* + fun:*dyld*link* +} + +{ + OSX1013:dyld-2 + Memcheck:Cond + fun:exit + obj:*libdyld*dylib* +} + +{ + OSX1013:dyld-3 + Memcheck:Cond + fun:bcmp + fun:_ZN16ImageLoaderMachO18validateFirstPagesEPK21linkedit_data_commandiPKhmxRKN11ImageLoader11LinkContextE + ... +} + +{ + OSX1013:dyld-4 + Memcheck:Value8 + fun:bcmp + fun:_ZN16ImageLoaderMachO18validateFirstPagesEPK21linkedit_data_commandiPKhmxRKN11ImageLoader11LinkContextE + ... +} + +{ + OSX1013:dyld-5 + Memcheck:Cond + fun:_ZN16ImageLoaderMachO18validateFirstPagesEPK21linkedit_data_commandiPKhmxRKN11ImageLoader11LinkContextE + fun:_ZN26ImageLoaderMachOCompressed19instantiateFromFileEPKciPKhmyyRK4statjjPK21linkedit_data_commandPK23encryption_info_commandRKN11ImageLoader11LinkContextE + fun:_ZN16ImageLoaderMachO19instantiateFromFileEPKciPKhmyyRK4statRKN11ImageLoader11LinkContextE + fun:_ZN4dyldL10loadPhase6EiRK4statPKcRKNS_11LoadContextE +} + +{ + OSX1013:libsystem_kernel-1 + Memcheck:Cond + obj:*libsystem_kernel*dylib* + obj:*libsystem_kernel*dylib* + obj:*CoreFoundation.framework*CoreFoundation* +} + +{ + OSX1013:CoreServicesInternal-1 + Memcheck:Cond + obj:*CoreServicesInternal.framework*CoreServicesInternal* + obj:*CoreServices.framework*LaunchServices* + obj:*CoreServices.framework*LaunchServices* +} + +{ + OSX1013:CoreServicesInternal-2 + Memcheck:Cond + obj:*CoreServicesInternal.framework*CoreServicesInternal* + obj:*CoreServicesInternal.framework*CoreServicesInternal* + obj:*CoreServicesInternal.framework*CoreServicesInternal* +} + +{ + OSX1013:CoreServicesInternal-3 + Memcheck:Cond + obj:*CoreServicesInternal.framework*CoreServicesInternal* + obj:*CoreServicesInternal.framework*CoreServicesInternal* + obj:*CoreFoundation.framework*CoreFoundation* +} + +{ + OSX1013:CoreServices-1 + Memcheck:Cond + obj:*CoreServices.framework*LaunchServices* + obj:*CoreServices.framework*LaunchServices* + obj:*CoreServices.framework*LaunchServices* +} + +##{ +## OSX1013:libsystem_pthread-1 +## Memcheck:Cond +## obj:*libsystem_pthread*dylib* +## obj:*ImageIO.framework*ImageIO* +## obj:*ImageIO.framework*ImageIO* +##} + +{ + OSX1013:ApplicationServices-1 + Memcheck:Cond + obj:*ApplicationServices.framework*ATS* + obj:*libsystem_pthread*dylib* + obj:*libsystem_platform*dylib* +} + +{ + OSX1013:HIToolbox-1 + Memcheck:Cond + obj:*HIToolbox.framework*HIToolbox* + obj:*HIToolbox.framework*HIToolbox* + obj:*HIToolbox.framework*HIToolbox* +} + +{ + OSX1013:RawCamera-1 + Memcheck:Cond + obj:*RawCamera.bundle*RawCamera* + obj:*libdispatch.dylib* + obj:*libdispatch.dylib* +} + +##{ +## OSX1013:CoreImage-1 +## Memcheck:Cond +## obj:*CoreImage.framework*CoreImage* +## obj:*CoreImage.framework*CoreImage* +## obj:*CoreImage.framework*CoreImage* +##} + +##{ +## OSX1013:strncpy-1 +## Memcheck:Cond +## fun:strncpy +## obj:*CoreServicesInternal.framework*CoreServicesInternal +## obj:*CoreServicesInternal.framework*CoreServicesInternal +##} + +{ + OSX1013:pthread_rwlock_init + Memcheck:Cond + fun:pthread_rwlock_init + obj:*ImageIO.framework*ImageIO* + obj:*ImageIO.framework*ImageIO* +} + +{ + OSX1013:CFBasicHash + Memcheck:Value8 + fun:*CFBasicHash* + fun:*CF* +} + +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-1-Addr8 + Memcheck:Addr8 + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* +} +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-1-Addr8 + Memcheck:Addr4 + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* +} + +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-2-Addr8 + Memcheck:Addr8 + fun:*platform_memmove* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* +} +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-2-Addr2 + Memcheck:Addr2 + fun:*platform_memmove* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* +} + +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-3-Addr8 + Memcheck:Addr8 + fun:*platform_memmove* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*GLEngine.bundle*GLEngine* +} +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-3-Addr2 + Memcheck:Addr2 + fun:*platform_memmove* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*GLEngine.bundle*GLEngine* +} +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-3-Addr1 + Memcheck:Addr1 + fun:*platform_memmove* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*GLEngine.bundle*GLEngine* +} + +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-4 + Memcheck:Addr8 + fun:*platform_bzero* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* +} + +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-6-Addr8 + Memcheck:Addr8 + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*GLEngine.bundle*GLEngine* +} +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-6-Addr4 + Memcheck:Addr4 + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*GLEngine.bundle*GLEngine* +} + +{ + OSX1013:AppleIntelHD4000GraphicsGLDriver-7 + Memcheck:Addr4 + obj:*AppleIntelHD4000GraphicsGLDriver.bundle*AppleIntelHD4000GraphicsGLDriver* + obj:*GLEngine.bundle*GLEngine* +} + +{ + OSX1013:OSAtomicAdd32 + Memcheck:Addr4 + fun:*OSAtomicAdd32* + obj:*IOAccelerator.framework*IOAccelerator* + obj:*GPUSupport.framework*GPUSupportMercury* +} + +{ + OSX1013:IOAccelerator-1 + Memcheck:Addr4 + obj:*IOAccelerator.framework*IOAccelerator* + obj:*GPUSupport.framework*GPUSupportMercury* +} + +# See https://bugs.kde.org/show_bug.cgi?id=188572 about this; it's +# unavoidable due to BSD setenv() semantics. +{ + macos-__setenv-leak-see-our-bug-188572 + Memcheck:Leak + match-leak-kinds: definite + fun:malloc + fun:_owned_ptr_alloc + fun:setenv +} + +# See https://bugs.kde.org/show_bug.cgi?id=196528 +{ +macos-__pthread_rwlock_init-see-our-bug-196528 +Memcheck:Cond +fun:pthread_rwlock_init +} diff --git a/include/vki/vki-scnums-darwin.h b/include/vki/vki-scnums-darwin.h index 961e33558a..d600ed31cf 100644 --- a/include/vki/vki-scnums-darwin.h +++ b/include/vki/vki-scnums-darwin.h @@ -191,6 +191,13 @@ #if defined(VGA_x86) #define __NR_macx_swapon VG_DARWIN_SYSCALL_CONSTRUCT_MACH(48) #define __NR_macx_swapoff VG_DARWIN_SYSCALL_CONSTRUCT_MACH(49) +#endif + +#if DARWIN_VERS >= DARWIN_10_13 +#define __NR_thread_get_special_reply_port VG_DARWIN_SYSCALL_CONSTRUCT_MACH(50) +#endif /* DARWIN_VERS >= DARWIN_10_13 */ + +#if defined(VGA_x86) #define __NR_macx_triggers VG_DARWIN_SYSCALL_CONSTRUCT_MACH(51) #define __NR_macx_backing_store_suspend VG_DARWIN_SYSCALL_CONSTRUCT_MACH(52) #define __NR_macx_backing_store_recovery VG_DARWIN_SYSCALL_CONSTRUCT_MACH(53) @@ -409,7 +416,11 @@ #define __NR_seteuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(183) #define __NR_sigreturn VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(184) #define __NR_chud VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(185) +#if DARWIN_VERS >= DARWIN_10_13 +#define __NR_thread_selfcounts VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(186) +#else /* 186 */ +#endif /* DARWIN_VERS >= DARWIN_10_13 */ #if DARWIN_VERS >= DARWIN_10_6 #define __NR_fdatasync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(187) #else @@ -654,7 +665,11 @@ #if DARWIN_VERS >= DARWIN_10_11 #define __NR_kevent_qos VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(374) #endif /* DARWIN_VERS >= DARWIN_10_11 */ +#if DARWIN_VERS >= DARWIN_10_13 +#define __NR_kevent_id VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(375) +#else /* 375 */ +#endif /* DARWIN_VERS >= DARWIN_10_13 */ /* 376 */ /* 377 */ /* 378 */ @@ -810,6 +825,17 @@ #define __NR_abort_with_payload VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(521) #endif /* DARWIN_VERS >= DARWIN_10_12 */ +#if DARWIN_VERS >= DARWIN_10_13 +#define __NR_necp_session_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(522) +#define __NR_necp_session_action VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(523) +#define __NR_setattrlistat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(524) +#define __NR_net_qos_guideline VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(525) +#define __NR_fmount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(526) +#define __NR_ntp_adjtime VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(527) +#define __NR_ntp_gettime VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(528) +#define __NR_os_fault_with_payload VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(529) +#endif /* DARWIN_VERS >= DARWIN_10_13 */ + #if DARWIN_VERS < DARWIN_10_6 #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(427) #elif DARWIN_VERS < DARWIN_10_7 @@ -824,6 +850,8 @@ #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(500) #elif DARWIN_VERS == DARWIN_10_12 #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(522) +#elif DARWIN_VERS == DARWIN_10_13 +#define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(530) #else #error unknown darwin version #endif