| OLD | NEW |
| (Empty) |
| 1 /* | |
| 2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. | |
| 3 * | |
| 4 * Use of this source code is governed by a BSD-style license | |
| 5 * that can be found in the LICENSE file in the root of the source | |
| 6 * tree. An additional intellectual property rights grant can be found | |
| 7 * in the file PATENTS. All contributing project authors may | |
| 8 * be found in the AUTHORS file in the root of the source tree. | |
| 9 */ | |
| 10 | |
| 11 // This file contains the WebRTC suppressions for ThreadSanitizer. | |
| 12 // Please refer to | |
| 13 // http://dev.chromium.org/developers/testing/threadsanitizer-tsan-v2 | |
| 14 // for more info. | |
| 15 | |
| 16 #if defined(THREAD_SANITIZER) | |
| 17 | |
| 18 // Please make sure the code below declares a single string variable | |
| 19 // kTSanDefaultSuppressions contains TSan suppressions delimited by newlines. | |
| 20 // See http://dev.chromium.org/developers/testing/threadsanitizer-tsan-v2 | |
| 21 // for the instructions on writing suppressions. | |
| 22 char kTSanDefaultSuppressions[] = | |
| 23 | |
| 24 // WebRTC specific suppressions. | |
| 25 | |
| 26 // Split up suppressions covered previously by thread.cc and messagequeue.cc. | |
| 27 "race:vp8cx_remove_encoder_threads\n" | |
| 28 "race:third_party/libvpx/source/libvpx/vp9/common/vp9_scan.h\n" | |
| 29 | |
| 30 // Usage of trace callback and trace level is racy in rtc_media_unittests. | |
| 31 // https://code.google.com/p/webrtc/issues/detail?id=3372 | |
| 32 "race:webrtc::TraceImpl::WriteToFile\n" | |
| 33 "race:webrtc::VideoEngine::SetTraceFilter\n" | |
| 34 "race:webrtc::VoiceEngine::SetTraceFilter\n" | |
| 35 "race:webrtc::Trace::set_level_filter\n" | |
| 36 "race:webrtc::GetStaticInstance<webrtc::TraceImpl>\n" | |
| 37 | |
| 38 // Race in pulse initialization. | |
| 39 // https://code.google.com/p/webrtc/issues/detail?id=5152 | |
| 40 "race:webrtc::AudioDeviceLinuxPulse::Init\n" | |
| 41 | |
| 42 // rtc_unittests | |
| 43 // https://code.google.com/p/webrtc/issues/detail?id=3911 for details. | |
| 44 "race:rtc::MessageQueueManager::Clear\n" | |
| 45 "race:rtc::Thread::Clear\n" | |
| 46 // https://code.google.com/p/webrtc/issues/detail?id=2080 | |
| 47 "race:webrtc/base/logging.cc\n" | |
| 48 "race:webrtc/base/sharedexclusivelock_unittest.cc\n" | |
| 49 "race:webrtc/base/signalthread_unittest.cc\n" | |
| 50 // https://code.google.com/p/webrtc/issues/detail?id=4456 | |
| 51 "deadlock:rtc::MessageQueueManager::Clear\n" | |
| 52 "deadlock:rtc::MessageQueueManager::ClearInternal\n" | |
| 53 | |
| 54 // rtc_pc_unittests | |
| 55 // https://code.google.com/p/webrtc/issues/detail?id=2079 | |
| 56 "race:webrtc/base/testclient.cc\n" | |
| 57 "race:webrtc/base/virtualsocketserver.cc\n" | |
| 58 "race:talk/p2p/base/stunserver_unittest.cc\n" | |
| 59 | |
| 60 // third_party/usrsctp | |
| 61 // TODO(jiayl): https://code.google.com/p/webrtc/issues/detail?id=3492 | |
| 62 "race:user_sctp_timer_iterate\n" | |
| 63 | |
| 64 // https://code.google.com/p/webrtc/issues/detail?id=5151 | |
| 65 "race:sctp_close\n" | |
| 66 | |
| 67 // Potential deadlocks detected after roll in r6516. | |
| 68 // https://code.google.com/p/webrtc/issues/detail?id=3509 | |
| 69 "deadlock:webrtc::test::UdpSocketManagerPosixImpl::RemoveSocket\n" | |
| 70 | |
| 71 // TODO(pbos): Trace events are racy due to lack of proper POD atomics. | |
| 72 // https://code.google.com/p/webrtc/issues/detail?id=2497 | |
| 73 "race:*trace_event_unique_catstatic*\n" | |
| 74 | |
| 75 // https://code.google.com/p/webrtc/issues/detail?id=4719 | |
| 76 "race:webrtc::voe::TransmitMixer::PrepareDemux\n" | |
| 77 "race:webrtc::voe::TransmitMixer::EnableStereoChannelSwapping\n" | |
| 78 | |
| 79 // Race between InitCpuFlags and TestCpuFlag in libyuv. | |
| 80 // https://code.google.com/p/libyuv/issues/detail?id=508 | |
| 81 "race:InitCpuFlags\n" | |
| 82 | |
| 83 // Test-only race due to PeerConnection::session() being virtual for testing. | |
| 84 // The stats collector may call session() before or after the destructor begins | |
| 85 // executing, which modifies the vtable. | |
| 86 "race:*RTCStatsIntegrationTest_GetsStatsWhileDestroyingPeerConnections_Test::Tes
tBody\n" | |
| 87 | |
| 88 // End of suppressions. | |
| 89 ; // Please keep this semicolon. | |
| 90 | |
| 91 #endif // THREAD_SANITIZER | |
| OLD | NEW |