############################ # Chromium { bug_23433 ThreadSanitizer:Race fun:*logging*SetMinLogLevel* } { bug_24419 ThreadSanitizer:Race fun:*BrowserProcessImpl*nspector*iles* } { bug_37496 ThreadSanitizer:Race ... fun:*browser_sync*SyncShareIntercept*Observe* } { bug_41314 ThreadSanitizer:Race ... fun:base::LaunchApp* fun:ChildProcessLauncher::Context::LaunchInternal* } { bug_46642a ThreadSanitizer:Race fun:*media*PipelineImpl*InitializeTask* } { bug_46642b ThreadSanitizer:Race fun:*media*PipelineImpl*GetCurrentTime* } { bug_57266a ThreadSanitizer:Race ... fun:*vp8*_* } { bug_57266b ThreadSanitizer:Race ... obj:*libffmpegsumo.* fun:ThreadSanitizerStartThread } { bug_62880 ThreadSanitizer:Race fun:ObserverListBase*Iterator* fun:browser_sync::sessions::SyncSessionContext::NotifyListeners* ... fun:browser_sync::SyncerThread::* } { bug_64075a ThreadSanitizer:Race fun:disk_cache::EntryImpl::GetDataSize* fun:net::HttpCache::Transaction::AddTruncatedFlag* fun:net::HttpCache::DoneWithEntry* } { bug_64075b ThreadSanitizer:Race fun:disk_cache::EntryImpl::UpdateSize* ... fun:disk_cache::EntryImpl::WriteDataImpl* } { bug_66994a ThreadSanitizer:Race fun:HistoryURLProvider::Stop* ... fun:AutocompleteController::St* } { bug_66994b ThreadSanitizer:Race ... fun:HistoryURLProvider::ExecuteWithDB* } { bug_67957 ThreadSanitizer:Race fun:Replace_memcpy fun:memcpy fun:Serialize* fun:UserScriptMaster::ScriptReloader::RunScan* } { bug_72169a ThreadSanitizer:Race fun:base::Thread::ThreadMain* } { bug_72169b ThreadSanitizer:Race fun:base::Thread::message_loop* ... fun:*::InotifyReader::OnInotifyEvent* } { bug_72548 ThreadSanitizer:Race ... fun:JSC::Yarr::Interpreter::*Disjunction* fun:JSC::Yarr::Interpreter::interpret* fun:JSC::Yarr::interpret* } { bug_72913 ThreadSanitizer:Race ... fun:ObserverListBase* ... fun:sync_api::SyncManager::SyncInternal::* fun:sync_api::SyncManager::* fun:browser_sync::* } { bug_76908 ThreadSanitizer:Race ... fun:browser_sync::Cryptographer::AddKeyImpl* fun:browser_sync::Cryptographer::AddKey* fun:sync_api::SyncManager::SyncInternal::SetPassphrase* fun:sync_api::SyncManager::SetPassphrase* fun:browser_sync::SyncBackendHost::Core::DoSetPassphrase* } ############################ # Benign races { bug_62694 [benign races in Histogram in CookieMonster] ThreadSanitizer:Race ... fun:base::Histogram::* fun:net::CookieMonster::* } { bug_64185a [probably-benign races in Histogram in skia::ImageOperations] ThreadSanitizer:Race ... fun:base::Histogram::* fun:skia::ImageOperations::* } { bug_64185b [probably-benign races in Histogram in skia::ImageOperations] ThreadSanitizer:Race ... fun:base::Histogram::* fun:HistogramSynchronizer::DeserializeHistogramList* } { bug_71634 ThreadSanitizer:Race fun:gdk_x_error ... fun:ui::GetWindowGeometry* } ############################ # Real races in third_party { bug_23244 (libevent) ThreadSanitizer:Race fun:event_* fun:event_* } { bug_28396 (libevent) (1) ThreadSanitizer:Race fun:detect_monotonic fun:event_base_new } { bug_28396 (libevent) (2) ThreadSanitizer:Race fun:gettime fun:event_base_loop } { bug_25913 (libjingle) (1) ThreadSanitizer:Race fun:*talk_base*MessageQueue*Stop* } { bug_25913 (libjingle) (2) ThreadSanitizer:Race fun:*talk_base*MessageQueue*Get* } { bug_25913 (libjingle) (3) ThreadSanitizer:Race fun:*talk_base*MessageQueue*Quit* } { bug_25913 (libjingle) (4) ThreadSanitizer:Race fun:*talk_base*MessageQueue*Post* } { bug_44168 (benign race in libjingle) ThreadSanitizer:Race fun:notifier::MediatorThreadImpl::~MediatorThreadImpl* } { bug_28765 (tcmalloc) ThreadSanitizer:Race ... fun:*tcmalloc*ThreadCache*DeleteCache* } { bug_40244 ThreadSanitizer:Race fun:*WebDataService*WebDataRequest*Cancel* fun:*WebDataService* } { bug_53192 ThreadSanitizer:UnlockNonLocked fun:pthread_mutex_unlock fun:talk_base::CriticalSection::Leave() fun:talk_base::CritScope::~CritScope() fun:talk_base::PosixSignalDeliveryDispatcher::ClearOwner(talk_base::PhysicalSocketServer*) fun:talk_base::PhysicalSocketServer::~PhysicalSocketServer() fun:scoped_ptr::~scoped_ptr() fun:talk_base::MessageQueue::~MessageQueue() fun:talk_base::Thread::~Thread() fun:talk_base::ThreadManager::UnwrapCurrentThread() fun:talk_base::ThreadManager::~ThreadManager() fun:__tcf_0 fun:exit } { bug_70938 ThreadSanitizer:Race ... obj:*libdbus* } { Nvidia GL driver destroys an invalid lock ThreadSanitizer:InvalidLock fun:pthread_mutex_destroy obj:*nvidia*/libGL.so.* } ############################ # Data races in tests { bug_30582 ThreadSanitizer:Race fun:*LongCallbackD* fun:*WorkerThreadTickerTest_LongCallback_Test*TestBody* } { bug_61731 ThreadSanitizer:Race fun:*Log* ... fun:*Worker* ... obj:*ipc_tests } { bug_68481 [test-only race on bool] ThreadSanitizer:Race fun:tracked_objects::ThreadData::StartTracking* fun:tracked_objects::TrackedObjectsTest_MinimalStartupShutdown_Test::TestBody* } # TODO(timurrrr): bug item { Data race on bool in AssertReporter [test-only] ThreadSanitizer:Race ... fun:*AssertReporter*warn* } # TODO(timurrrr): bug item { Data race on WatchdogCounter [test-only] ThreadSanitizer:Race ... fun:*WatchdogCounter*larm* } # TODO(timurrrr): bug item { Data race on counter in WorkQueue [test-only] ThreadSanitizer:Race ... fun:*WorkQueue* } # TODO(timurrrr): bug item { Data race on vfptr in base/watchdog_unittest ThreadSanitizer:Race ... fun:*WatchdogTest_*arm*Test_Test*TestBody* } # TODO(timurrrr): bug item { Data race on vfptr in base/thread_unittest ThreadSanitizer:Race ... fun:*ThreadTest_SleepInsideInit*TestBody* } # TODO(timurrrr): bug item { Data race on bool in chrome/browser/net/url_fetcher_unittest (1) ThreadSanitizer:Race fun:*URLFetcherCancelTest*TestContextReleased* } { Data race on bool in chrome/browser/net/url_fetcher_unittest (2) ThreadSanitizer:Race fun:*CancelTestURLRequestContext*CancelTestURLRequestContext* } { ThreadSanitizer sanity test (ToolsSanityTest.DataRace). ThreadSanitizer:Race fun:*TOOLS_SANITY_TEST_CONCURRENT_THREAD*ThreadMain* } { Benign race (or even a false positive) on atomics in ThreadCollisionWarner ThreadSanitizer:Race fun:base::subtle::NoBarrier_Store fun:base::ThreadCollisionWarner::Leave } { bug_75246a ThreadSanitizer:Race ... fun:MockConnectionManager::set_store_birthday } { bug_75246b ThreadSanitizer:Race ... fun:MockConnectionManager::PostBufferToPath } ############################ # Benign races in ICU { Two writes, same value (ICU gGlobalMutex, gMutexesInUse) ThreadSanitizer:Race ... fun:umtx_init_46 } { Two writes, same value (ICU gHeapInUse) ThreadSanitizer:Race fun:uprv_malloc_46 } # Reading a pointer to a mutex being initialized in a concurrent thread. { A benign race in umtx_lock_46 ThreadSanitizer:Race fun:umtx_lock_46 } ############################ # Benign race in SQLLite { Two writes, same value (SQLLite pthreadMutexAlloc) ThreadSanitizer:Race ... fun:pthreadMutexAlloc fun:sqlite3MutexAlloc } { Two writes, same value (under sqlite3Malloc) ThreadSanitizer:Race ... fun:sqlite3Malloc* } { Two writes, same value (sqlite3_initialize) ThreadSanitizer:Race fun:sqlite3_initialize fun:openDatabase } ############################ # Races in V8 # http://code.google.com/p/v8/issues/detail?id=361 { Race on Locker::active_ in v8 ThreadSanitizer:Race fun:v8::Locker::* } ############################ # Benign races in libc # A benign race inside the implementation of internal libc mutex { Benign races in __lll_*lock_*_private ThreadSanitizer:Race fun:__lll_*lock_*_private } # Benign race below thread-safe time-conversion functions { fun:__tz* ThreadSanitizer:Race fun:__tz* } # Benign race below thread-safe time-conversion functions { fun:tzset* ThreadSanitizer:Race ... fun:tzset* } # Benign race in thread-safe function { fun:mkstemp* ThreadSanitizer:Race ... fun:mkstemp* } # We already ignore memory accesses inside ld # but we also need to ignore accesses below it. { fun:_dl_close ThreadSanitizer:Race ... fun:_dl_close } # fprintf is thread-safe. The benign races happen on the internal lock. { Benign race below fprintf (1) ThreadSanitizer:Race ... fun:buffered_vfprintf ... fun:fprintf } { Benign race below fprintf (2) ThreadSanitizer:Race fun:new_do_write fun:vfprintf } { fun:timegm ThreadSanitizer:Race ... fun:timegm } { Benign race in nss (PR_EnterMonitor) ThreadSanitizer:Race fun:PR_EnterMonitor } ############################ # TSan false positives { tsanbug_62a ThreadSanitizer:Race fun:__memset_sse2 } { tsanbug_62b ThreadSanitizer:Race fun:__GI_memcpy } { bug_70085a ThreadSanitizer:Race fun:WebCore::ResourceResponseBase::~ResourceResponseBase* fun:WebCore::ResourceResponse::~ResourceResponse* ... fun:WebCore::DocumentLoader::~DocumentLoader* fun:WebKit::WebDataSourceImpl::~WebDataSourceImpl* } { bug_70085b ThreadSanitizer:Race fun:WebCore::SecurityOrigin::~SecurityOrigin* fun:WTF::ThreadSafe*::deref* }