Roll chromium_revision 601e6f3..b0c3ed3 (315263:316737)

Moved LSan suppressions from tools/lsan/suppressions.txt to compiled-in
suppressions similar to the Chromium changes in
https://codereview.chromium.org/924923002
I will remove tools/lsan after committing this and the bots are updated to
not specify it.

Other relevant changes:
* src/buildtools: da0df3f..5c5e924
* src/third_party/android_tools: f6e2370..fd5a8ec
* src/third_party/boringssl/src: 8f5e2eb..d306f16
* src/third_party/openmax_dl: 81318c1..21c8abe
Details: 601e6f3..b0c3ed3/DEPS

Clang version was not updated in this roll.

R=glider@chromium.org, henrika@webrtc.org, pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37299004

Cr-Commit-Position: refs/heads/master@{#8406}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8406 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
kjellander@webrtc.org 2015-02-18 10:37:51 +00:00
parent b4987bfc24
commit cc483b7379
7 changed files with 147 additions and 3 deletions

2
DEPS
View File

@ -6,7 +6,7 @@
vars = {
'extra_gyp_flag': '-Dextra_gyp_flag=0',
'chromium_git': 'https://chromium.googlesource.com',
'chromium_revision': '601e6f32704fed600914fd5198c24395c4dc36f5',
'chromium_revision': 'b0c3ed39916e25bed2900b653974672a39fcb254',
}
# NOTE: Prefer revision numbers to tags for svn deps. Use http rather than

View File

@ -1,5 +1,4 @@
kjellander@webrtc.org
per-file tsan_suppressions_webrtc.cc=pbos@webrtc.org
# These are for the common case of adding or renaming files. If you're doing
# structural changes, please get a review from a reviewer in this file.

View File

@ -0,0 +1,2 @@
kjellander@webrtc.org
pbos@webrtc.org

View File

@ -0,0 +1,3 @@
This directory contains suppressions for sanitizer tools.
They're overriding the default ones for Chromium using our
webrtc/supplement.gypi file.

View File

@ -0,0 +1,131 @@
/*
* Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
// This file contains the WebRTC suppressions for LeakSanitizer.
// You can also pass additional suppressions via LSAN_OPTIONS:
// LSAN_OPTIONS=suppressions=/path/to/suppressions. Please refer to
// http://dev.chromium.org/developers/testing/leaksanitizer for more info.
#if defined(LEAK_SANITIZER)
// Please make sure the code below declares a single string variable
// kLSanDefaultSuppressions which contains LSan suppressions delimited by
// newlines. See http://dev.chromium.org/developers/testing/leaksanitizer
// for the instructions on writing suppressions.
char kLSanDefaultSuppressions[] =
// ============ Leaks in third-party code shared with Chromium =============
// These entries are copied from build/sanitizers/lsan_suppressions.cc in
// Chromium. Please don't add new entries here unless they're present in there.
// False positives in libfontconfig. http://crbug.com/39050
"leak:libfontconfig\n"
// Leaks in Nvidia's libGL.
"leak:libGL.so\n"
// TODO(earthdok): revisit NSS suppressions after the switch to BoringSSL
// NSS leaks in CertDatabaseNSSTest tests. http://crbug.com/51988
"leak:net::NSSCertDatabase::ImportFromPKCS12\n"
"leak:net::NSSCertDatabase::ListCerts\n"
"leak:net::NSSCertDatabase::DeleteCertAndKey\n"
"leak:crypto::ScopedTestNSSDB::ScopedTestNSSDB\n"
// Another leak due to not shutting down NSS properly. http://crbug.com/124445
"leak:error_get_my_stack\n"
// The NSS suppressions above will not fire when the fast stack unwinder is
// used, because it can't unwind through NSS libraries. Apply blanket
// suppressions for now.
"leak:libnssutil3\n"
"leak:libnspr4\n"
"leak:libnss3\n"
"leak:libplds4\n"
"leak:libnssckbi\n"
// XRandR has several one time leaks.
"leak:libxrandr\n"
// xrandr leak. http://crbug.com/119677
"leak:XRRFindDisplay\n"
// ========== Leaks in third-party code not shared with Chromium ===========
// None known so far.
// ================ Leaks in WebRTC code ================
// PLEASE DO NOT ADD SUPPRESSIONS FOR NEW LEAKS.
// Instead, commits that introduce memory leaks should be reverted. Suppressing
// the leak is acceptable in some cases when reverting is impossible, i.e. when
// enabling leak detection for the first time for a test target with
// pre-existing leaks.
// rtc_unittest
// https://code.google.com/p/webrtc/issues/detail?id=3827 for details.
"leak:rtc::unstarted_task_test_DoNotDeleteTask2_Test::TestBody\n"
"leak:rtc::HttpServer::HandleConnection\n"
"leak:rtc::HttpServer::Connection::onHttpHeaderComplete\n"
"leak:rtc::HttpResponseData::set_success\n"
"leak:rtc::HttpData::changeHeader\n"
// https://code.google.com/p/webrtc/issues/detail?id=4149 for details.
"leak:StartDNSLookup\n"
// libjingle_media_unittest
"leak:cricket::FakeNetworkInterface::SetOption\n"
"leak:CodecTest_TestCodecOperators_Test::TestBody\n"
"leak:VideoEngineTest*::ConstrainNewCodecBody\n"
"leak:VideoMediaChannelTest*::AddRemoveRecvStreams\n"
"leak:WebRtcVideoCapturerTest_TestCapture_Test::TestBody\n"
"leak:WebRtcVideoEngineTestFake_MultipleSendStreamsWithOneCapturer_Test::TestBody\n"
"leak:WebRtcVideoEngineTestFake_SetBandwidthInConference_Test::TestBody\n"
"leak:WebRtcVideoEngineTestFake_SetSendCodecsRejectBadFormat_Test::TestBody\n"
// libjingle_peerconnection_unittest
// https://code.google.com/p/webrtc/issues/detail?id=2528
"leak:cricket::FakeVideoMediaChannel::~FakeVideoMediaChannel\n"
"leak:cricket::MediaSessionDescriptionFactory::CreateAnswer\n"
"leak:cricket::MediaSessionDescriptionFactory::CreateOffer\n"
"leak:DtmfSenderTest_InsertEmptyTonesToCancelPreviousTask_Test::TestBody\n"
"leak:sigslot::_signal_base2*::~_signal_base2\n"
"leak:testing::internal::CmpHelperEQ\n"
"leak:webrtc::AudioDeviceLinuxALSA::InitMicrophone\n"
"leak:webrtc::AudioDeviceLinuxALSA::InitSpeaker\n"
"leak:webrtc::CreateIceCandidate\n"
"leak:webrtc::FakeConstraints::AddOptional\n"
"leak:webrtc::WebRtcIdentityRequestObserver::OnSuccess\n"
"leak:webrtc::WebRtcSessionDescriptionFactory::InternalCreateAnswer\n"
"leak:webrtc::WebRtcSessionDescriptionFactory::InternalCreateOffer\n"
"leak:PeerConnectionInterfaceTest_SsrcInOfferAnswer_Test::TestBody\n"
"leak:PeerConnectionInterfaceTest_CloseAndTestMethods_Test::TestBody\n"
"leak:WebRtcSdpTest::TestDeserializeRtcpFb\n"
"leak:WebRtcSdpTest::TestSerialize\n"
"leak:WebRtcSdpTest_SerializeSessionDescriptionWithDataChannelAndBandwidth_Test::TestBody\n"
"leak:WebRtcSdpTest_SerializeSessionDescriptionWithBandwidth_Test::TestBody\n"
"leak:WebRtcSessionTest::SetLocalDescriptionExpectError\n"
"leak:WebRtcSessionTest_TestAVOfferWithAudioOnlyAnswer_Test::TestBody\n"
// libjingle_unittest
// https://code.google.com/p/webrtc/issues/detail?id=2527
"leak:buzz::FakeXmppClient::SendStanza\n"
"leak:buzz::XmppTask::XmppTask\n"
"leak:HangoutPubSubClientTest::HangoutPubSubClientTest\n"
"leak:MucRoomConfigTaskTest::SetUp\n"
"leak:MucRoomDiscoveryTaskTest::SetUp\n"
"leak:MucRoomLookupTaskTest::SetUp\n"
"leak:MucRoomUniqueHangoutIdTaskTest::SetUp\n"
"leak:PingTaskTest::SetUp\n"
"leak:PingXmppClient::SendStanza\n"
"leak:PubSubClientTest::PubSubClientTest\n"
"leak:PubSubTasksTest::PubSubTasksTest\n"
// PLEASE READ ABOVE BEFORE ADDING NEW SUPPRESSIONS.
// End of suppressions.
; // Please keep this semicolon.
#endif // LEAK_SANITIZER

View File

@ -10,13 +10,22 @@
'target_conditions': [
['_target_name=="sanitizer_options"', {
'conditions': [
['lsan==1', {
# Replace Chromium's LSan suppressions with our own for WebRTC.
'sources/': [
['exclude', 'lsan_suppressions.cc'],
],
'sources': [
'<(webrtc_root)/build/sanitizers/lsan_suppressions_webrtc.cc',
],
}],
['tsan==1', {
# Replace Chromium's TSan v2 suppressions with our own for WebRTC.
'sources/': [
['exclude', 'tsan_suppressions.cc'],
],
'sources': [
'<(webrtc_root)/build/tsan_suppressions_webrtc.cc',
'<(webrtc_root)/build/sanitizers/tsan_suppressions_webrtc.cc',
],
}],
],