1 # This file lists the functions, object files and source files 2 # which should be ignored (i.e. not instrumented) by ThreadSanitizer on Mac OS. 3 # At the moment the Chromium binaries' debug info is not available to 4 # ThreadSanitizer, so we have to define fun:* rules for Mac OS complementing 5 # the src:* rules defined for Linux. 6 7 # we ignore the Security libraries for now since 8 # their instrumentation is very slow. 9 # TODO(timurrrr): investigate whether we need to instrument them 10 obj:*/Security* 11 obj:*/libcrypto* 12 # SensitiveAllocator::free is a part of the Security framework. 13 # It calls bzero (0xffff0633) which can't be resolved and thus should be 14 # ignored recursively. 15 fun_r:*SensitiveAllocator*free* 16 17 # The CFBag and CFDictionary operators should be thread-safe, but they are not 18 # annotated properly. 19 # TODO(glider): replace all the CoreFoundation suppressions with ignores. 20 fun_r:CFBag* 21 fun_r:CFDictionary* 22 fun_r:CFBasicDictionary* 23 #fun_r:CFBasicHash* 24 25 # see crbug.com/46138 26 fun_r:__CFRunLoopDeallocate 27 28 fun_r:__CFRunLoopRemoveAllSources 29 fun_r:__CFFinalizeRunLoop 30 31 # _cthread_fork_child() is called in the child process after the fork syscall. 32 # This function cleans up the cthread data structures created in the parent, 33 # so ThreadSanitizer might consider it racey. 34 fun_r:_cthread_fork_child 35 36 # False reports on Snow Leopard. 37 fun_r: _pthread_exit 38 fun_r: _dispatch_queue_drain 39