-
# DRD suppressions for Darwin 10.x / Mac OS X 10.6 Snow Leopard
+
+#
+# dyld
+#
+{
+ dyld_mutex_not_locked
+ drd:MutexErr
+ fun:pthread_mutex_unlock
+ fun:_dyld_register_func_for_*_image
+}
+{
+ dyld_mutex_reinitialization
+ drd:MutexErr
+ fun:pthread_mutex_init
+ fun:_Z24dyldGlobalLockInitializev
+ fun:_dyld_initializer
+}
+{
+ dyld_stub_binder
+ drd:ConflictingAccess
+ ...
+ fun:_ZN4dyld18fastBindLazySymbolEPP11ImageLoaderm
+ fun:dyld_stub_binder
+}
+{
+ dyld ImageLoaderMachOCompressed::findExportedSymbol(char const*, ImageLoader const**) const
+ drd:ConflictingAccess
+ fun:_ZNK26ImageLoaderMachOCompressed18findExportedSymbolEPKcPPK11ImageLoader
+}
+{
+ dyld dyld::fastBindLazySymbol(ImageLoader**, unsigned long)
+ drd:ConflictingAccess
+ ...
+ fun:_ZN4dyld18fastBindLazySymbolEPP11ImageLoaderm
+}
+{
+ dyld ImageLoaderMachOCompressed::doBindFastLazySymbol(unsigned int, ImageLoader::LinkContext const&)
+ drd:ConflictingAccess
+ ...
+ fun:_ZN26ImageLoaderMachOCompressed20doBindFastLazySymbolEjRKN11ImageLoader11LinkContextE
+}
+
+#
+# C library
+#
+{
+ __umodti3
+ drd:ConflictingAccess
+ fun:__umodti3
+}
+{
+ fork()
+ drd:ConflictingAccess
+ ...
+ fun:_cthread_fork_child
+ fun:fork
+}
+{
+ flockfile
+ drd:ConflictingAccess
+ fun:flockfile
+}
+{
+ funlockfile
+ drd:ConflictingAccess
+ fun:funlockfile
+}
+{
+ vfprintf_l
+ drd:ConflictingAccess
+ fun:vfprintf_l
+}
+{
+ localeconv_l
+ drd:ConflictingAccess
+ fun:localeconv_l
+}
+{
+ __vfprintf
+ drd:ConflictingAccess
+ fun:__vfprintf
+}
+{
+ fflush
+ drd:ConflictingAccess
+ fun:fflush
+}
+{
+ cerror
+ drd:ConflictingAccess
+ ...
+ fun:cerror
+}
+{
+ do_rand
+ drd:ConflictingAccess
+ fun:do_rand
+}
+{
+ mig_dealloc_reply_port
+ drd:ConflictingAccess
+ fun:mig_dealloc_reply_port
+}
+
+#
+# pthread library
+#
+{
+ thread_start
+ drd:ConflictingAccess
+ obj:*
+ fun:thread_start
+}
+{
+ pthread_create()
+ drd:ConflictingAccess
+ ...
+ fun:pthread_create
+}
+{
+ pthread_join()
+ drd:ConflictingAccess
+ ...
+ fun:pthread_join
+ fun:pthread_join
+}
+{
+ _pthread_exit()
+ drd:ConflictingAccess
+ ...
+ fun:_pthread_exit
+}
+{
+ pthread_detach()
+ drd:ConflictingAccess
+ ...
+ fun:pthread_detach
+ fun:pthread_detach
+}
+{
+ pthread_kill()
+ drd:ConflictingAccess
+ ...
+ fun:pthread_kill
+}
+{
+ spin_unlock()
+ drd:ConflictingAccess
+ fun:spin_unlock
+}
+{
+ _pthread_testcancel()
+ drd:ConflictingAccess
+ fun:_pthread_testcancel
+}