OLD | NEW |
(Empty) | |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 // This file contains the default suppressions for ThreadSanitizer. |
| 6 // You can also pass additional suppressions via TSAN_OPTIONS: |
| 7 // TSAN_OPTIONS=suppressions=/path/to/suppressions. Please refer to |
| 8 // http://dev.chromium.org/developers/testing/threadsanitizer-tsan-v2 |
| 9 // for more info. |
| 10 |
| 11 #if defined(THREAD_SANITIZER) |
| 12 |
| 13 // Please make sure the code below declares a single string variable |
| 14 // kTSanDefaultSuppressions contains TSan suppressions delimited by newlines. |
| 15 // See http://dev.chromium.org/developers/testing/threadsanitizer-tsan-v2 |
| 16 // for the instructions on writing suppressions. |
| 17 char kTSanDefaultSuppressions[] = |
| 18 // False positives in libflashplayer.so and libglib.so. Since we don't |
| 19 // instrument them, we cannot reason about the synchronization in them. |
| 20 "race:libflashplayer.so\n" |
| 21 "race:libglib*.so\n" |
| 22 |
| 23 // Intentional race in ToolsSanityTest.DataRace in base_unittests. |
| 24 "race:base/tools_sanity_unittest.cc\n" |
| 25 |
| 26 // Data race on WatchdogCounter [test-only]. |
| 27 "race:base/threading/watchdog_unittest.cc\n" |
| 28 |
| 29 // Races in libevent, http://crbug.com/23244. |
| 30 "race:libevent/event.c\n" |
| 31 |
| 32 // http://crbug.com/46840. |
| 33 "race:base::HistogramSamples::IncreaseSum\n" |
| 34 "race:base::Histogram::Add\n" |
| 35 "race:base::HistogramSamples::Add\n" |
| 36 |
| 37 // http://crbug.com/84094. |
| 38 "race:sqlite3StatusSet\n" |
| 39 "race:pcache1EnforceMaxPage\n" |
| 40 "race:pcache1AllocPage\n" |
| 41 |
| 42 // http://crbug.com/102327. |
| 43 // Test-only race, won't fix. |
| 44 "race:tracked_objects::ThreadData::ShutdownSingleThreadedCleanup\n" |
| 45 |
| 46 // http://crbug.com/115540 |
| 47 "race:*GetCurrentThreadIdentifier\n" |
| 48 |
| 49 // http://crbug.com/120808 |
| 50 "race:base/threading/watchdog.cc\n" |
| 51 |
| 52 // http://crbug.com/157586 |
| 53 "race:third_party/libvpx/source/libvpx/vp8/decoder/threading.c\n" |
| 54 |
| 55 // http://crbug.com/158718 |
| 56 "race:third_party/ffmpeg/libavcodec/pthread.c\n" |
| 57 "race:third_party/ffmpeg/libavcodec/pthread_frame.c\n" |
| 58 "race:third_party/ffmpeg/libavcodec/vp8.c\n" |
| 59 "race:third_party/ffmpeg/libavutil/mem.c\n" |
| 60 "race:*HashFrameForTesting\n" |
| 61 "race:third_party/ffmpeg/libavcodec/h264pred.c\n" |
| 62 "race:media::ReleaseData\n" |
| 63 |
| 64 // http://crbug.com/158922 |
| 65 "race:third_party/libvpx/source/libvpx/vp8/encoder/*\n" |
| 66 |
| 67 // http://crbug.com/189177 |
| 68 "race:thread_manager\n" |
| 69 "race:v8::Locker::Initialize\n" |
| 70 |
| 71 // http://crbug.com/223352 |
| 72 "race:uprv_malloc_46\n" |
| 73 "race:uprv_realloc_46\n" |
| 74 |
| 75 // http://crbug.com/239359 |
| 76 "race:media::TestInputCallback::OnData\n" |
| 77 |
| 78 // http://crbug.com/244368 |
| 79 "race:skia::BeginPlatformPaint\n" |
| 80 |
| 81 // http://crbug.com/244385 |
| 82 "race:unixTempFileDir\n" |
| 83 |
| 84 // http://crbug.com/244755 |
| 85 "race:v8::internal::Zone::NewExpand\n" |
| 86 "race:TooLateToEnableNow\n" |
| 87 "race:adjust_segment_bytes_allocated\n" |
| 88 |
| 89 // http://crbug.com/244774 |
| 90 "race:webrtc::RTPReceiver::ProcessBitrate\n" |
| 91 "race:webrtc::RTPSender::ProcessBitrate\n" |
| 92 "race:webrtc::VideoCodingModuleImpl::Decode\n" |
| 93 "race:webrtc::RTPSender::SendOutgoingData\n" |
| 94 "race:webrtc::VP8EncoderImpl::GetEncodedPartitions\n" |
| 95 "race:webrtc::VP8EncoderImpl::Encode\n" |
| 96 "race:webrtc::ViEEncoder::DeliverFrame\n" |
| 97 "race:webrtc::vcm::VideoReceiver::Decode\n" |
| 98 "race:webrtc::VCMReceiver::FrameForDecoding\n" |
| 99 "race:*trace_event_unique_catstatic*\n" |
| 100 |
| 101 // http://crbug.com/244856 |
| 102 "race:AutoPulseLock\n" |
| 103 |
| 104 // http://crbug.com/246968 |
| 105 "race:webrtc::VideoCodingModuleImpl::RegisterPacketRequestCallback\n" |
| 106 |
| 107 // http://crbug.com/246970 |
| 108 "race:webrtc::EventPosix::StartTimer\n" |
| 109 |
| 110 // http://crbug.com/246974 |
| 111 "race:content::GpuWatchdogThread::CheckArmed\n" |
| 112 |
| 113 // http://crbug.com/257396 |
| 114 "race:base::debug::TraceEventTestFixture_TraceSamplingScope_Test::TestBody\n" |
| 115 |
| 116 // http://crbug.com/258479 |
| 117 "race:SamplingStateScope\n" |
| 118 "race:g_trace_state\n" |
| 119 |
| 120 // http://crbug.com/258499 |
| 121 "race:third_party/skia/include/core/SkRefCnt.h\n" |
| 122 |
| 123 // http://crbug.com/268924 |
| 124 "race:base::g_power_monitor\n" |
| 125 "race:base::PowerMonitor::PowerMonitor\n" |
| 126 "race:base::PowerMonitor::AddObserver\n" |
| 127 |
| 128 // http://crbug.com/268941 |
| 129 "race:tracked_objects::ThreadData::tls_index_\n" |
| 130 |
| 131 // http://crbug.com/270037 |
| 132 "race:gLibCleanupFunctions\n" |
| 133 |
| 134 // http://crbug.com/272095 |
| 135 "race:base::g_top_manager\n" |
| 136 |
| 137 // http://crbug.com/272987 |
| 138 "race:webrtc::MediaStreamTrack<webrtc::AudioTrackInterface>::set_enabled\n" |
| 139 |
| 140 // http://crbug.com/273047 |
| 141 "race:base::*::g_lazy_tls_ptr\n" |
| 142 "race:IPC::SyncChannel::ReceivedSyncMsgQueue::lazy_tls_ptr_\n" |
| 143 |
| 144 // http://crbug.com/280466 |
| 145 "race:content::WebRtcAudioCapturer::SetCapturerSource\n" |
| 146 |
| 147 // http://crbug.com/285242 |
| 148 "race:media::PulseAudioOutputStream::SetVolume\n" |
| 149 |
| 150 // http://crbug.com/290964 |
| 151 "race:PostponeInterruptsScope\n" |
| 152 "race:v8::internal::StackGuard::RequestInstallCode\n" |
| 153 |
| 154 // http://crbug.com/296883 |
| 155 "race:net::URLFetcherCore::Stop\n" |
| 156 |
| 157 // http://crbug.com/308590 |
| 158 "race:CustomThreadWatcher::~CustomThreadWatcher\n" |
| 159 |
| 160 // http://crbug.com/310851 |
| 161 "race:net::ProxyResolverV8Tracing::Job::~Job\n" |
| 162 |
| 163 // http://crbug.com/313726 |
| 164 "race:CallbackWasCalled\n" |
| 165 |
| 166 // http://crbug.com/327330 |
| 167 "race:PrepareTextureMailbox\n" |
| 168 "race:cc::LayerTreeHost::PaintLayerContents\n" |
| 169 |
| 170 // http://crbug.com/328804 |
| 171 "race:v8::internal::Heap::SetStackLimits\n" |
| 172 "race:ScavengePointer\n" |
| 173 |
| 174 // http://crbug.com/328826 |
| 175 "race:gLCDOrder\n" |
| 176 "race:gLCDOrientation\n" |
| 177 |
| 178 // http://crbug.com/328868 |
| 179 "race:PR_Lock\n" |
| 180 |
| 181 // http://crbug.com/329225 |
| 182 "race:blink::currentTimeFunction\n" |
| 183 |
| 184 // http://crbug.com/329460 |
| 185 "race:extensions::InfoMap::AddExtension\n" |
| 186 |
| 187 // http://crbug.com/330528 |
| 188 "race:v8::internal::MarkCompactCollector::SweepInParallel\n" |
| 189 |
| 190 // http://crbug.com/333244 |
| 191 "race:content::" |
| 192 "VideoCaptureImplTest::MockVideoCaptureImpl::~MockVideoCaptureImpl\n" |
| 193 |
| 194 // http://crbug.com/333871 |
| 195 "race:v8::internal::Interface::NewValue()::value_interface\n" |
| 196 "race:v8::internal::IsMinusZero(double)::minus_zero\n" |
| 197 "race:v8::internal::FastCloneShallowObjectStub::InitializeInterfaceDescriptor\n" |
| 198 "race:v8::internal::KeyedLoadStubCompiler::registers\n" |
| 199 "race:v8::internal::KeyedStoreStubCompiler::registers()::registers\n" |
| 200 "race:v8::internal::KeyedLoadFastElementStub::InitializeInterfaceDescriptor\n" |
| 201 "race:v8::internal::KeyedStoreFastElementStub::InitializeInterfaceDescriptor\n" |
| 202 "race:v8::internal::LoadStubCompiler::registers\n" |
| 203 "race:v8::internal::StoreStubCompiler::registers\n" |
| 204 "race:v8::internal::HValue::LoopWeight\n" |
| 205 |
| 206 // http://crbug.com/334140 |
| 207 "race:CommandLine::HasSwitch\n" |
| 208 "race:CommandLine::current_process_commandline_\n" |
| 209 "race:CommandLine::GetSwitchValueASCII\n" |
| 210 |
| 211 // http://crbug.com/338675 |
| 212 "race:blink::s_platform\n" |
| 213 "race:content::" |
| 214 "RendererWebKitPlatformSupportImpl::~RendererWebKitPlatformSupportImpl\n" |
| 215 |
| 216 // http://crbug.com/345240 |
| 217 "race:WTF::s_shutdown\n" |
| 218 |
| 219 // http://crbug.com/345245 |
| 220 "race:jingle_glue::JingleThreadWrapper::~JingleThreadWrapper\n" |
| 221 "race:webrtc::voe::Channel::UpdatePacketDelay\n" |
| 222 "race:webrtc::voe::Channel::GetDelayEstimate\n" |
| 223 "race:webrtc::VCMCodecDataBase::DeregisterReceiveCodec\n" |
| 224 "race:webrtc::GainControlImpl::set_stream_analog_level\n" |
| 225 |
| 226 // http://crbug.com/345251 |
| 227 "race:cc::s_next_layer_id\n" |
| 228 |
| 229 // http://crbug.com/345618 |
| 230 "race:WebCore::AudioDestinationNode::render\n" |
| 231 |
| 232 // http://crbug.com/345624 |
| 233 "race:media::DataSource::set_host\n" |
| 234 |
| 235 // http://crbug.com/347534 |
| 236 "race:v8::internal::V8::TearDown\n" |
| 237 |
| 238 // http://crbug.com/347538 |
| 239 "race:sctp_timer_start\n" |
| 240 |
| 241 // http://crbug.com/347548 |
| 242 "race:cricket::WebRtcVideoMediaChannel::MaybeResetVieSendCodec\n" |
| 243 "race:cricket::WebRtcVideoMediaChannel::SetSendCodec\n" |
| 244 |
| 245 // http://crbug.com/347553 |
| 246 "race:blink::WebString::reset\n" |
| 247 |
| 248 // http://crbug.com/348511 |
| 249 "race:webrtc::acm1::AudioCodingModuleImpl::PlayoutData10Ms\n" |
| 250 |
| 251 // http://crbug.com/348982 |
| 252 "race:cricket::P2PTransportChannel::OnConnectionDestroyed\n" |
| 253 "race:cricket::P2PTransportChannel::AddConnection\n" |
| 254 |
| 255 // http://crbug.com/348984 |
| 256 "race:sctp_express_handle_sack\n" |
| 257 |
| 258 // http://crbug.com/350982 |
| 259 "race:libvpx/vp9/decoder/vp9_thread.c\n" |
| 260 |
| 261 // http://crbug.com/361790 |
| 262 "race:workerGlobalScopeDestroyed\n" |
| 263 |
| 264 // http://crbug.com/363999 |
| 265 "race:v8::internal::EnterDebugger::*EnterDebugger\n" |
| 266 |
| 267 // http://crbug.com/364006 |
| 268 "race:gfx::ImageFamily::~ImageFamily\n" |
| 269 |
| 270 // http://crbug.com/364014 |
| 271 "race:WTF::Latin1Encoding()::globalLatin1Encoding\n" |
| 272 |
| 273 // https://code.google.com/p/v8/issues/detail?id=3143 |
| 274 "race:v8::internal::FLAG_track_double_fields\n" |
| 275 |
| 276 // https://crbug.com/369257 |
| 277 // TODO(mtklein): annotate properly and remove suppressions. |
| 278 "race:SandboxIPCHandler::HandleFontMatchRequest\n" |
| 279 "race:SkFontConfigInterfaceDirect::matchFamilyName\n" |
| 280 "race:SkFontConfigInterface::GetSingletonDirectInterface\n" |
| 281 |
| 282 // http://crbug.com/372807 |
| 283 "deadlock:net::X509Certificate::CreateCertificateListFromBytes\n" |
| 284 "deadlock:net::X509Certificate::CreateFromBytes\n" |
| 285 "deadlock:net::SSLClientSocketNSS::Core::DoHandshakeLoop\n" |
| 286 |
| 287 // http://crbug.com/374135 |
| 288 "race:media::AlsaWrapper::PcmWritei\n" |
| 289 "deadlock:media::AudioOutputDispatcherImpl::StopStream\n" |
| 290 "deadlock:media::AudioStreamHandler::AudioStreamContainer::OnMoreData\n" |
| 291 |
| 292 // http://crbug.com/374151 |
| 293 "deadlock:media::FakeAudioConsumer::Worker::DoRead\n" |
| 294 |
| 295 // http://crbug.com/377420 |
| 296 "deadlock:media::AudioRendererMixerInput::Play\n" |
| 297 |
| 298 // End of suppressions. |
| 299 ; // Please keep this semicolon. |
| 300 |
| 301 #endif // THREAD_SANITIZER |
OLD | NEW |